質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

ORM

ORM(オブジェクト関係マッピング)はオブジェクト指向のシステムとリレーショナルデータベースの間でマッピングを行う技術です。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

Q&A

解決済

1回答

4845閲覧

【Typeorm/Node.js】 でCRUDしたいがエラー(ConnectionNotFoundError: Connection "default" was not found.)がでて出来ない。

tonkotsu_ramen

総合スコア6

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

ORM

ORM(オブジェクト関係マッピング)はオブジェクト指向のシステムとリレーショナルデータベースの間でマッピングを行う技術です。

TypeScript

TypeScriptは、マイクロソフトによって開発された フリーでオープンソースのプログラミング言語です。 TypeScriptは、JavaScriptの構文の拡張であるので、既存の JavaScriptのコードにわずかな修正を加えれば動作します。

0グッド

0クリップ

投稿2021/08/27 05:54

【やろうとしていること】

Typeormを使って簡単なアプリを作成中で、まずは基本的な操作を試してみるべく、CRUD処理を一通り書いてみようとしている段階です。

現在の状態

ローカル環境にて、Typeormをインストール。
DB(AWS RDS)と接続は成功で、マイグレーションファイルの作成と、マイグレーションの実行はできています。

エラーの状態

まずは、データをインサートしてみようと思い、下記のようなファイルを用意し、実行してみましたところ、このようなエラーが出ています。
※この記事を参考にしました。
https://qiita.com/taisuke-j/items/001dfaa8b61649601d73

javascript

1// test.js (ルートディレクトリ直下に作成) 2import { getConnection } from "typeorm"; 3 4await getConnection() 5 .createQueryBuilder() 6 .insert() 7 .into(User) 8 .values([{ id: 5, username: "Timber", password: "pass1234" }]) 9 .execute();

javascript

1 2$ node test.js 3/Users//mil/typeorm_test/node_modules/typeorm/error/TypeORMError.js:9 4 var _this = _super.call(this, message) || this; 5 ^ 6ConnectionNotFoundError: Connection "default" was not found. 7以下省略

やってみたこと

ConnectionNotFoundError: Connection "default" was not found.で検索してみたところ、下記のリンクの記事があり、その通りにDBの設定にname: 'default',を追加してみましたが、変化ありませんでした。

https://www.gitmemory.com/issue/entrostat/typeorm-test-transactions/9/606762369

実現したいこと

エラーなく、コマンドからデータをインサートしたい。

コード

typescript

1// src/entity/User.ts 2// このファイルは問題なくマイグレートできました。 3import { Entity, PrimaryGeneratedColumn, Column } from "typeorm"; 4 5@Entity() 6export class User { 7 @PrimaryGeneratedColumn() 8 id: number; 9 10 @Column() 11 username: string; 12 13 @Column() 14 password: string; 15} 16

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

自己解決

自己解決できました。公式の読み込みが甘かったです。失礼いたしました。
下は一例です。

ts

1// $ npm startで実行 2import { createConnection, getRepository, getConnection } from "typeorm"; 3import { User } from "./entity/User"; 4 5exports.handler = async (event) => { 6 createConnection({ 7 type: "mysql", 8 host: "127.0.0.1", 9 port: 3306, 10 username: "admin", 11 password: "password", 12 database: "db_name", 13 entities: [User], 14 synchronize: true, 15 logging: false, 16 }) 17 .then(async (connection) => { 18 // ここからCRUDの記述 19 20 // パターン① 21 let user = new User(); 22 user.username = "oreore"; 23 user.password = "pass1234"; 24 await connection.manager.save(user); 25 26 27 28 // パターン② 29 await getConnection() 30 .createQueryBuilder() 31 .insert() 32 .into(User) 33 .values([{ username: "userByBuilder", password: "pass5678" }]) 34 .execute(); 35 }) 36 .catch((error) => console.log(error)); 37 38};

投稿2021/08/28 05:48

tonkotsu_ramen

総合スコア6

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問