dポイントプレゼントキャンペーン実施中!

C#でSQL(オラクル)に接続しています。
このinsert文を実行すると「ORA-00984: ここでは列は使用できません。」がでます。

実行した文はこれです↓
"insert into kanri2 values('aaa'," + dateTimePicker1.Text + "," + checkedListBox1.CheckedItems +","+ checkedListBox6.CheckedItems +")";

よろしくお願いします

A 回答 (1件)

実行されたC#の文を示されていますが、


実際にOracleに投げられたSQL文を見れば、エラー原因が分かると思います。

逆に、今示された内容ですと、変数部分の値が分からぬため、エラー原因が分かりません。

"insert into kanri2 values('aaa'," + dateTimePicker1.Text + "," + checkedListBox1.CheckedItems +","+ checkedListBox6.CheckedItems +")";
この文字列を、ログ出力するなどして、変数名が実際の値に置き換わったSQL全文を見てみることはできますでしょうか?
そのSQL文をSQL*PLUSやSQL DeveloperなどのSQL実行ツールで実行しながらデバッグしていくとよいですよ。


差し当たり推測としては、変数の値が文字列値なのであれば、前後をシングルクオートで囲む必要があり、それが原因かと。恐らく、以下のような感じかな。
"insert into kanri2 values('aaa','" + dateTimePicker1.Text + "','" + checkedListBox1.CheckedItems +"','"+ checkedListBox6.CheckedItems +"')";
    • good
    • 3

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

関連するカテゴリからQ&Aを探す