次の方法で共有


メタデータの検出

SQL Server 2012 ではメタデータ検出機能が強化されているため、SQL Server Native Client アプリケーションでは、クエリの実行によって返された列またはパラメーター メタデータがクエリの実行前に指定したメタデータ形式と同じであるか、その形式と互換性があることを確認できます。 クエリの実行後に返されたメタデータにクエリの実行前に指定したメタデータ形式との互換性がない場合は、エラーが発生します。

bcp 関数と ODBC 関数、および IBCPSession インターフェイスと IBCPSession2 インターフェイスでは、遅延読み取り (遅延メタデータ検出) を指定して、クエリ出力操作でメタデータ検出を回避できます。 その結果、パフォーマンスが向上し、メタデータ検出のエラーを回避できます。

SQL Server 2012 の SQL Server Native Client を使用してアプリケーションを開発し、SQL Server 2012 より前のバージョンのサーバーに接続する場合、メタデータ検出機能はそのバージョンのサーバーに対応したものとなります。

解説

SQL Server 2012 では次の bcp 関数が機能強化され、メタデータ検出機能が向上しています。

bcp_setbulkmode を使用してメタデータ形式を指定したときのパフォーマンスも向上しています。

bcp_control には、bcp_readfmt の動作を制御するための新しい eOption (BCPDELAYREADFMT) が追加されています。

SQL Server 2012 では次の ODBC 関数が機能強化され、メタデータ検出機能が向上しています。

SQL Server 2012 では次の OLE DB メンバー関数が機能強化され、メタデータ検出機能が向上しています。

  • IColumnsInfo::GetColumnInfo

  • IColumnsRowset::GetColumnsRowset

  • ICommandWithParameters::GetParameterInfo (詳細については、「ICommandWithParameters」を参照してください)

IBCPSession::BCPSetBulkMode を使用してメタデータ形式を指定したときのパフォーマンスも向上しています。

SQL Server Native Client でのメタデータ検出機能の強化は、SQL Server 2012 への次の 2 つのストアド プロシージャの追加により実現されました。

  • sp_describe_first_result_set

  • sp_describe_undeclared_parameters

関連項目

その他の技術情報

SQL Server Native Client の機能