ASP.netの私的メモ

大学の授業でASP.netを使ったシステム開発をしているので、その時知ったことのメモ。
ASP.netでOleDbを使ってデータベース接続をして、SELECT文を実行するとき、

string command = "SELECT 項目1, 項目2 FROM テーブル WHERE 項目1 = 条件1 AND 項目2 LIKE 条件2%;";
のように一旦、クエリを変数に代入しますが、最後のLIKEステートメントの指定でハマりました。
スポンサードリンク

私の作っているシステムでは、条件の部分が変数になっています。
string command = "SELECT 項目1, 項目2 FROM テーブル WHERE 項目1 =" +  TextBox1.Text + " AND 項目2 LIKE " + TextBox2.Text + "%;";
みたいに。
で、条件1では数値を扱っているので、なんら問題はありません。
問題はその次で、条件2には日本語が含まれているので、シングルクォーテーションで囲まなければなりません。

つまり、
string command = "SELECT 項目1, 項目2 FROM テーブル WHERE 項目1= " + 条件1  + "AND 項目2 LIKE'" +  条件2 + "%';";
のようにしないとだめらしいです。
これに気づくのに1時間もかかってしまったのでメモ。
ASPでは、ダブルクォーテーション(“)で囲まれた所は文字列として扱われるため、シングルクォーテーション(‘)を記述する際はその中に含めなければなりません。
まだ慣れていない感MAX・・・。

スポンサードリンク
Pocket

Comments are closed.