- - PR -
C#で SQLServeに書き込む
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2005-12-20 16:18
はじめましていつも参考にさせていただいております。
現在、C#から下記のようなプログラムでSQL Serverに書き込もうと試みているのですが,変数を用いると、 このコンテキストでは名前 'name' は許可されません。定数、式または変数だけがここでは許されます。列名は許可されません。 のエラーがでて書き込むことができません。どなたかアドバイスをいただけませんか? ちなみに変数を用いないで値を直接書き込むことはできました。 string hiduke = Calendar1.SelectedDate.ToShortDateString(); string nanpaku = TextBox1.Text; string name = TextBox3.Text; string otona = TextBox4.Text; string kobito = TextBox5.Text; string heya = TextBox6.Text; string bikou = TextBox7.Text; string nConnectionString = string.Empty; nConnectionString += "Data Source =aaa;"; nConnectionString += "Initial Catalog =bbb;"; nConnectionString += "Integrated Security = SSPI;"; System.Data.SqlClient.SqlConnection sConn = ( new System.Data.SqlClient.SqlConnection(nConnectionString) ); sConn.Open(); System.Data.SqlClient.SqlCommand hCommand = sConn.CreateCommand(); hCommand.CommandText = "insert into ccc values('2005/12/13',2,name,5,2,2,2)"; int iResult = hCommand.ExecuteNonQuery(); hCommand.Dispose(); | ||||
|
投稿日時: 2005-12-20 16:24
文字列になっていません。 name という列を使おうとしていると見なされます。 _________________ C# と VB.NET の入門サイト じゃんぬねっと日誌 | ||||
|
投稿日時: 2005-12-20 16:29
こんにちは。
「name という文字列」を設定したい訳ではないですよね?(そうだとしても今の書き方では無理ですが) 設定したいのは name 変数に入っている値だと思うので、そのようにして下さい。 SqlParameter を使うのをお勧めします。調べてみてください。判らなければまた仰ってください。 _________________ 囚人のジレンマな日々 | ||||
|
投稿日時: 2005-12-21 11:26
じゃんぬねっとさん 囚人さん返信ありがとうございます。
まずSqlParameterについて調べて見たいと思います。 |
1