まとまりのないブログ

something which something is something

delphi

InterBaseコンポーネントでSQLを実行する方法

投稿日:

IBQuery

sql:= ‘select id,itemName from item’;
IBQuery1.SQL.SetText(Pwidechar(sql));
IBQuery1.Open;

IBSQL

sql:= ‘insert into item(id,itemName) values(100,”’test”’)’;
IBSQL1.SQL.SetText(PWideChar(sql));
IBSQL1.ExecQuery;

IBDataSet

sql:= ‘select id,itemName from item’;
IBDataSet1.SelectSQL.Text := sql;
IBDataSet1.Open;

どれを使えばいいのかわからない件

IBQueryとIBDataSetはIBDataSourceのdatasetプロパティに設定をすることができる。Openプロシージャでselect文の結果セットがDBGridにバインドされる。IBSQLというのはinsertやdeleteなどのSQLを実行するコンポーネント・・・という理解でいいのだろうか。delphi XE2ではdbExpressのコンポーネントを使うことが推奨されているらしいが、それにしても似たようなコンポーネントでしかも同じような使い道ができるものが多いため戸惑う。

どうでもいいけれどfirebirdはSQL文中の文字の値はシングルクォートで囲まないといけないのか。知らなかった。

下記のページがよくまとまってある。
Databases – Delphi/Firebird – SQL

-delphi

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)

関連記事

no image

IBQueryのサンプルコード

sql := ‘insert into table(id,name) values(1,’test’)’; IBQuery1.SQL.SetText(P …

no image

Delphi DBGridのカラムの右寄せと左寄せと中央寄せ

alignmentプロパティに入れる定数がわからなかったので備忘録。 左寄せ taLeftJustify 中央寄せ taCenter 右寄せ taRightJustify 使い方は DBGrid3.C …

Delphi – string型

Delphiのstring型について。一般的なプログラミング言語にある文字列を扱う型。char型は1文字を扱うがstring型は複数の文字からなる文字列を扱う。string型はchar型が配列となった …

no image

Delphi OnGetTextイベント

OnGetTextイベントという名前だけは知っていたが、それがどのコンポーネント(?)のイベントなのかわからなかったので使い方がどうのまで進めなかった。OnGetTextイベントはTFieldが持って …

no image

Delphi DBGridのデータが(WIDEMEMO)と表示される

DelphiのDBGridはlong varchar型をサポートしていないために表示させようとするとWIDEMEMOという表示になってしまう。回避するには、OnGetTextイベントで値を文字列として …