dbGo for .NET (ADO Express for .NET)

以前はADO Expressと呼ばれていましたが、いつの間にかdbGoと名前が変わった、ADOによるデータベース接続のためのコンポーネントセットです。Delphi 2005から .NET版のdbGOが使えるようになりましたので、今回はこれを使ってみましょう。
注意
サーバー側の設定はすべて終わっている状態です。今回サーバーには Microsoft SQL Server を用いています。データベース名はiPentecデータベース内のテーブルは TEST-001 として、説明をしています。

まず、「新規作成」で VCLフォームアプリケーションを選択します。
dbGo for .NET (ADO Express for .NET):画像1

次に、下のようなフォームを作成します。DbGrid DbNavigator ADOConnection ADOQuery DataSource を貼り付けます。
dbGo for .NET (ADO Express for .NET):画像2

 ADOQuery のConnectionプロパティーをセットします。ADOConnectionにします。
dbGo for .NET (ADO Express for .NET):画像3

DataSourceのDataSetプロパティーをセットします。ADOQueryにします。
dbGo for .NET (ADO Express for .NET):画像4

次に、DBNavigatorのDataSourceプロパティをセットします。ここはDataSourceに設定します。
dbGo for .NET (ADO Express for .NET):画像5

DBGridのDataSourceプロパティもセットします。
dbGo for .NET (ADO Express for .NET):画像6

そして、ADOQueryのSQLプロパティーを編集します。
dbGo for .NET (ADO Express for .NET):画像7

SQLを記入します。レコードを全部取得するSQL文にしてみます。
dbGo for .NET (ADO Express for .NET):画像8

ADOConnectionのConnectionStringプロパティーを編集します。ConnectionStringプロパティの右側にある[...]をクリックすると、下のようなダイアログが表示されます。接続文字列の使用のラジオボックスをチェックし、ビルドボタンを押します。
dbGo for .NET (ADO Express for .NET):画像9

データリンクプロパティのダイアログが表示されます。まず、OLE DBプロバイダを選びます。今回SQL Serverと接続するので "Microsoft OLE DB Provider for SQL Server"を選びます。
dbGo for .NET (ADO Express for .NET):画像10

サーバー名、接続に使用するアカウント情報を入れます。また、接続先のデータベースも指定します。
dbGo for .NET (ADO Express for .NET):画像11

必要に応じて、その他の設定をします。
dbGo for .NET (ADO Express for .NET):画像12

詳細設定です
dbGo for .NET (ADO Express for .NET):画像13

設定ができましたらADOQueryのActiveプロパティーをTrueにします。DBGridやDBNavigatorがアクティブになり、テーブルのフィールドが表示されました。
dbGo for .NET (ADO Express for .NET):画像14

アプリケーションを実行します。DBNavigatorの+ボタンを押すと、DBGridに新しい行が追加され、記入できるようになります。
dbGo for .NET (ADO Express for .NET):画像15

レコードの内容を記入します。記入できましたらDBNavigatorの「レ」のボタンを押して内容を確定させます。これでデータの追加ができました。いったんアプリケーションを終わらせて、もう一度実行したときでも、先ほど追加した内容が保持されていることを確認できます。これで、データベースに接続してレコードの操作ができることが確認できました。
dbGo for .NET (ADO Express for .NET):画像16

ちなみに、比較の為にWin32でも同じものを作ってみました、Win32でも全く同じ手順で作ることができます。
dbGo for .NET (ADO Express for .NET):画像17

実行してみました。dbGO for .NET と同様に動くことを確認できます。
dbGo for .NET (ADO Express for .NET):画像18

さて、ここまで、見てきた感じですと、全く同様に動くので簡単なデータベース操作アプリはVCL .NET に移せそうだと思います。しかし、dbGO for.NETで作ったプログラムで追加などを繰り返すと、下のようなエラーが出てきたりします。このエラーが出ると、DBNavigatorとDBGridがデッドロックしてしまいアプリケーションを終了することしかできなくなってしまいます。ちなみに同じ操作を繰り返しても、Win32で作ったプログラムはエラーが出ませんでした。リリースされたばかりなので、まだ .NETのdbGOにはたくさんバグがあるのかもしれません。


AuthorPortraitAlt
著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
作成日: 2005-01-01
Copyright © 1995–2025 iPentec all rights reserverd.