Microsof SQL Server向けODBCドライバーを利用したアプリが開発可能に
「Linux」向けに「Microsoft ODBC Driver」が提供されており、「Microsoft ODBC Driver」を利用して「Microsof SQL Server」にアクセスするアプリの開発が可能になっています。現在最新版の「Microsoft ODBC Driver」は、「Microsoft ODBC Driver 13.1」です。
「Microsoft ODBC Driver」を利用すれば、Linux上で動作するC/C++アプリケーションから「SQL Server」、「Azure SQL」、「Database and Azure SQL DW」へアクセスできるようになります。
Microsoft ODBC Driver 13.1の新機能や機能改善
「Microsoft ODBC Driver 13.1」では以下の機能追加や改善が行われています。BCD APIのサポート
「Microsoft ODBC Driver」を通じて「Bulk Copy Functions」を利用できます。
Ubuntu 16.10のサポート
「Ubuntu 16.10」がサポートされました。UnixODBCの採用
今までは独自のカスタマイズされた「unixODBC-utf16 Driver Manager」に依存していましたが、標準的な「UnixODBC Driver Manager」に依存するようになりました。これにより「UnixODBC Driver Manager」に依存しているアプリケーションやソフトウェアと衝突しなくて済むようになりました。
Microsoft ODBC Driver 13.1の不具合修正
「Microsoft ODBC Driver 13.1」では以下の不具合修正が行われています。不足していた定義の追加
不足していた「AE」、「BCP」及び「SQL Server」の特定のタイプに関する定義が、「msqobcsql.h」に追加されました。TRUST_SERVER_CERTIFICATE
「TRUST_SERVER_CERTIFICATE」接続属性にyes以外の値を設定すると、属性値を設定できない問題が修正されました。メモリーリークの修正
メモリーリークが修正されました。1024ハンドルを超えると接続に失敗する問題の修正
1024ハンドルを超えると接続に失敗する問題の修正されました。
理論上は64Kまでのハンドル数もしくはプラットフォームで定義されている最大のハンドル数まで扱えるようになりました。
Azure DW利用時にcommlinkfailureが発生する問題の修正
暗号化されたチャンネルで高レイテンシが発生すると、ドライバー外とせず処理を終了してしまう問題がゆうせいされました。開発用のパッケージをインストールするには
「Microsoft ODBC Driver」を利用したアプリを開発するには、開発用のパッケージのインストールが必要になります。1.リポジトリーの追加
「SQL Serverツール」のリポジトリーを追加します。リポジトリーの追加方法は、以下を参考にしてください。
2.ODBCドライバーのインストール
Microsof SQL Server向けODBCドライバーをインストールするため、「msodbcsql」パッケージをインストールします。
sudo apt install msodbcsql
3.UnixODBC開発用ファイルのインストール
UnixODBCの開発用ファイルをインストールするため、「unixodbc-dev」パッケージをインストールします。
sudo apt install unixodbc-dev
サンプル
C言語で記述されたサンプルアプリが公開されています。サーバーへの接続設定を編集後、ソースコードをgccでビルドしてください。
gcc sample_c_linux.c -o sample_c_linux -lodbc -w #make sure you change the servername, username and password in the connections string
./sample_c_linux
./sample_c_linux