Nestjs を使用して Planetscale に接続する方法
P粉311423594
2023-08-28 20:10:23
<p>typeorm を使用して、mysql に多数のテーブルを含む Nest アプリケーションを作成しました。 </p>
<p>データベースを Planetscale に接続しようとすると、対応するエラーが表示されます: </p>
<pre class="brush:php;toolbar:false;">[Nest] 9160 - 03/23/2023、3:56:07AM **エラー [ExceptionHandler] は連結時に述語をプッシュできません**
QueryFailedError: **連結時に述語をプッシュできません**
Query.onResult (/workspaces/result-gen/src/driver/mysql/MysqlQueryRunner.ts:222:33) で
Query.execute で (/workspaces/result-gen/node_modules/mysql2/lib/commands/command.js:36:14)
PoolConnection.handlePacket (/workspaces/result-gen/node_modules/mysql2/lib/connection.js:488:32)
PacketParser.onPacket (/workspaces/result-gen/node_modules/mysql2/lib/connection.js:94:12) で
PacketParser.executeStart で (/workspaces/result-gen/node_modules/mysql2/lib/packet_parser.js:75:16)
TLSSocket.<anonymous> (/workspaces/result-gen/node_modules/mysql2/lib/connection.js:387:25)
TLSSocket.emit (ノード:イベント:512:28)
addChunk (ノード:内部/ストリーム/読み取り可能:324:12)
readableAddChunk (ノード:内部/ストリーム/読み取り可能:297:9) で
TLSSocket.Readable.push (node:internal/streams/readable:234:10)</pre> で
<p><strong>planetscale</strong> オンライン データベースに接続しようとすると、多数の行で構成される多数のテーブルがあり、これらのエラーが表示されます。 </p>
<p>このデータベース接続をエラーなく処理できるように手伝ってください...</p>
PlanetScale Github リポジトリによると、この問題を修正するアップデートがあるようです。それまでの間、
リーリーapp.module
のTypeOrmModule
パラメーターと構成された DataSource に次のコードを追加することで、問題を解決することができました。