'simei')";OleDbCommandを使ってデータベースに値を挿入したいときに変数を使う方法をご教授願います。いう文字列だけがフィールドに挿入されてしまいます。(当たり前ですが・・・。)これをkaisyameiというテキストボックスコントロールに入ってる値を挿入したいのですが・・・。kaisyameiテキストボックスの値を変数(Tmptext)とかに代入してもうまくいかず、Tmptextという文字列だけが挿入されてしまいました。どなたかご教授願います。どのDBを使用するかも書いていただく方が回答しやすいです。パラメタライズドクエリなどと呼ばれる方法を使用します。simei.Text);こうすることで、本来クエリに入っていてはいけない文字列が含まれることによるSQLインジェクション等の回避も行えます。OLEDBではパラメータに名前を使えず、?で位置を指定するだけになります。AddWithValueの第1引数は実際のところ意味がありません。@simei)という風にクエリ本文にパラメータ名を付けられるのですが。OleDbCommandを使ってデータベースに値を挿入したいときに変数を使う方法をご教授願います。いう文字列だけがフィールドに挿入されてしまいます。(当たり前ですが・・・。これをkaisyameiというテキストボックスコントロールに入ってる値を挿入したいのですが・・・。kaisyameiテキストボックスの値を変数(Tmptext)とかに代入してもうまくいかず、Tmptextという文字列だけが挿入されてしまいました。どなたかご教授願います。ご教授する程の者ではございませんが、幾つか質問がございます。1)お使いのデーターベースの製品名とバージョンが書いてありませんが、何でしょうか?>kaisyameiテキストボックスの値を変数(Tmptext)とかに代入してもうまくいかず2)この時のコードは書いてありませんが、どのようなコードだったのでしょうか。'simei')";>>>>OleDbCommandを使ってデータベースに値を挿入したいときに変数を使う方法をご教授願います。いう文字列だけがフィールドに挿入されてしまいます。(当たり前ですが・・・。)>>これをkaisyameiというテキストボックスコントロールに入ってる値を挿入したいのですが・・・。>>>>kaisyameiテキストボックスの値を変数(Tmptext)とかに代入してもうまくいかず、Tmptextという文字列だけが挿入されてしまいました。>>>>>>どなたかご教授願います。ご教授する程の者ではございませんが、幾つか質問がございます。Access2016のaccdb形式のファイルとなります。2)この時のコードは書いてありませんが、どのようなコードだったのでしょうか。kaisyamei.Text;本当にシンプルにストリング型に入れてるだけですね。文を記述していますが、何故このようなことをなさるのでしょうか?他のやり方を知らなかったからですね。DBによっては別の接続の方が便利な場合がありますSQLサーバーを使用している場合はSQLで・・。みたいな考えだったので、OleDBを使っています。どのDBを使用するかも書いていただく方が回答しやすいです。パラメタライズドクエリなどと呼ばれる方法を使用します。SQLインジェクション等の回避も行えます。OLEDBではパラメータに名前を使えず、?で位置を指定するだけになります。AddWithValueの第1引数は実際のところ意味がありません。いう風にクエリ本文にパラメータ名を付けられるのですが。すみません、そうすると変数に値を入れてデータベースに渡したい場合はOLEDBではだめなのでしょうか・・・。Access2016のaccdbファイルになります。返信>>>kaisyameiテキストボックスの値を変数(Tmptext)とかに代入してもうまくいかず>>2)この時のコードは書いてありませんが、どのようなコードだったのでしょうか。本当にシンプルにストリング型に入れてるだけですね。文と誤って書いて送信してしましました。文の実際の内容だったのです。返信パラメータ化クエリを利用してください。インジェクション攻撃防止のために必須です。パラメータ化のもう一つのメリットにパフォーマンスの向上があります。指定される位置パラメータマーカーが使用されますが、基本的なところは同じです。「tetris」さん=「テトリス」さん=「わたー」さんですか?であれば、利用規約、"一貫して同じハンドルを使用し、場を混乱させないようにしましょう。(自作自演をしたり別人を装うのは回答者の善意を裏切る行為です)。"を守っていただければと思います。返信パラメータクエリ、調べてみましたが、まだ理解に時間がかかりそうなので、参考にさせていただき、勉強してみます。すみません、特に理由があったわけではないのですが、投稿する度に名前書いていたので・・・。>>2)この時のコードは書いてありませんが、どのようなコードだったのでしょうか。本当にシンプルにストリング型に入れてるだけですね。文と誤って書いて送信してしましました。文の実際の内容だったのです。conn;command.ExecuteNonQuery();conn.Close();別部分でTmptext1とTmpText2に値を代入してます。'Temptext2')";で良いはずです。文字列連結する意味が無いかと。構築することはできます。記述は、既に他の方が書かれているように避けるべきです。認識できなくなるなどの問題を抱えるからです。