13.15 .NET Framework Data Provider for ODBCによるSQL文の自動生成
.NET Framework Data Provider for ODBCは,Microsoftが提供する.NET Frameworkクラスライブラリの一つです。.NET Framework Data Provider for ODBCでは,OdbcCommandBuilderクラスを使用することで,データソースに対する更新用のSQL文を自動で生成することができます。
HiRDB ODBC3.5ドライバを使用した場合の,.NET Framework Data Provider for ODBCのSQL文の自動生成を実行するときの制限事項を次に示します。
-
.NET Framework Data Provider for ODBCを介したSQL文の自動生成は,HiRDBのバージョン08-04以降で動作します。08-04より前のバージョンでの動作は保証しません。
-
SQL文の自動生成の基となるOdbcDataAdapterクラスのSelectCommandプロパティに指定するSELECT文で,表名に相関名を指定した場合,HiRDBサーバはHiRDB ODBC3.5ドライバに実表名を返却します。そのため,HiRDBサーバに対して有効なSQL文が自動生成されます。しかし,表名に別名を指定した場合,HiRDBサーバはHiRDB ODBC3.5ドライバに表名を返却しません。そのため,HiRDB ODBC3.5ドライバのSQLColAttribute関数のSQL_DESC_BASE_TABLE_NAMEの情報を必要とする.NET Framework Data Provider for ODBCへ表名が返却できません。この場合はSQL文の自動生成は保証されません。
-
SQL文の自動生成の基となるOdbcDataAdapterクラスのSelectCommandプロパティに指定するSELECT文で,列名に別名を指定した場合,HiRDBサーバはHiRDB ODBC3.5ドライバに列の別名を返却します。そのため,自動生成されるSQL文は,列の別名が使用された状態となります。この列の別名が使用されたSQL文を実行した場合,その列は実際には存在しないため,HiRDBサーバ側ではエラーを返却します。