delphi2005を使っています。ADOでOracle9iと接続しました。
ADOQueryのSQLプロパティに直接INSERT文を書くと、うまくレコードを追加できるのですが、下のようにコードに書くと追加できません。
ADOQuery.SQL.ADD('INSERT INTO テーブル名 VALUES("文字データ")');
実行すると’ここでは列は使えません’とoracleからエラーがでます。
同じ文を書いているだけなのになぜエラーがでるのか分かりません。
どなたか教えていただけますか?
試してないのでなんですが、、、
INSERT INTO テーブル名 VALUES("文字データ")
と直接プロパティに書いても同様のエラーになる気がします。
コードで書くなら
ADOQuery.SQL.Add('INSERT INTO テーブル名 VALUES(''文字データ'')');
プロパティに直接書くなら
INSERT INTO テーブル名 VALUES('文字データ')
と思います。
間違ってたら、許してください。
発言ありがとうございます。
直接プロパティに書くと追加できました。
でもコードで同じ内容を書くと出来ないんです。
ADOQuery.SQL.Add('INSERT INTO テーブル名 VALUES(”文字データ”)');
と書いているのに。。。。。
「ここでは列は使用できません」とエラーがでてしまいます。
どうやら文字データのところでエラーが出ているようです。
文字の’あいう’をSQLで追加したいときはコードでは”あいう”と書けばいいんですよね??
”あいう” ではなくて
''あいう'' です
^^^^^^^^^^をメモ帳にでもコピペしてみると違いがわかると思います。
なりました!!
ずっと気が付かず、困っていました。うっかりしてました。
本当にありがとうございました!
ツイート | ![]() |