- 締切済み
DELPHIでSQLテーブルを読み込み・編集・削除したい
DELPHI6を使っております。素人です。 以下のようなプログラムを書きたいと思っておりますが、 参考書やネットで調べても以下の作業ができません。 SQLテーブルに a_tbl というテーブルをつくり、 a_id varchar2 (一意) a_namae varchar2 a_kubun varchar2 という項目を作りました。 delphiでは、editboxを設置して、それぞれ edit1, edit2, edit3という名前をつけました。 また、ボタン1、2を設置しました。 行いたい作業は以下です。 ・edit1に値を入力し、ボタン1をクリックする ・「a_id」に格納されている値と、「edit1」に入力した文字とが一致するところの「a_namae」を「edit2」に、「a_kubun」を「edit3」に表示させる ・edit3に表示した文字を変えて、ボタンをクリックすると「a_kubun」が 上書きされる ・「a_id」に格納されている値と、「edit1」に入力した文字とが一致する ものがない場合、edit2と3に入力してボタン2をクリックすることで 新規に「a_tbl」にレコードが記入される 教えてください!
- みんなの回答 (3)
- 専門家の回答
みんなの回答
#1、#2です。試行は上手くいったでしょうか? 駄目ならば具体的にその状況を補足するか、新しく質問してください。既に新たな質問を投稿しているならば、それへのリンクを補足してください。
現在MDB(MS-Access)でしか試すことができないので 1.フォームに TADOConnection,TADODataSet,TDataSource,TDBEdit二つ,TEdit,TButton を貼り付ける 2.ADOConnection1.ConnectionStringを Provider=Microsoft.Jet.OLEDB.4.0;User ID=Admin;Data Source=C:\data\delphi\Utils\test\SampleData.mdb;Mode=Share Deny None;Extended Properties="";Jet OLEDB:System database="";Jet OLEDB:Registry Path="";Jet OLEDB:Database Password="";Jet OLEDB:Engine Type=5;Jet OLEDB:Database Locking Mode=1;Jet OLEDB:Global Partial Bulk Ops=2;Jet OLEDB:Global Bulk Transactions=1;Jet OLEDB:New Database Password="";Jet OLEDB:Create System のようにする。「C:\data\delphi\Utils\test\SampleData.mdb」この部分は適切に変更すること 3.ADODataSet1.ConnectionをADOConnection1にする 4.DataSource1.DataSetをADODataSet1にする 5.DBEdit1/2.DataSourceをDataSource1にする 6.DBEdit1/2.DataFieldを'a_name'/'a_kubun'にする 7.以上の操作は、コードを直接書くのではなく、プロパティエディタを使用する 8.Button1のクリックイベントに以下のコードを書く procedure TForm1.Button1Click(Sender: TObject); begin ADODataSet1.Locate('a_id',Edit1.Text,[]); end; これでEdit1にidを入れてボタンを押すと'a_name'と'a_kubun'が変化します。
お礼
丁寧に教えてくださいありがとうございます! 試してみます!
通常Delphiでデータベースを操作するときは TAdoDataSet,TDataSource,TDBEdit,TDBNavigator などを使用します。これらを利用すれば、ほとんどコードを書かずに済みます。TEditなどを利用すると、かなり面倒なことになるのですが、それなりに理由があるのでしょうか?
お礼
書き込みありがとうございます。 そうなんですね。 dbtoolsを使えばどうやってできるのでしょうか? ・・・本当に素人なので、教えていただけるとうれしいです。
お礼
できました! ありがとうございました!