2016-03-25 12 views
-1

私はこれに新たなんだと私は私がやっていると私は本当にあなたが、プレースホルダ{12}を欠場MS Accessにデータを挿入すると、エラー "INSERT INTO文の構文エラー"が発生します。 VB

Dim lnkr As New OleDbCommand(String.Format("insert into project (Student Name, Days Absent, Classes Absent, Arabic, Islamic, English, Math, Biology, Chemistry, Physic, Computer,Day Offs) values ('{0}',{1},{2},{3},{4},{5},{6},{7},{8},{9},{10},{11}", TextBox1.Text, TextBox10.Text, TextBox12.Text, TextBox2.Text, TextBox6.Text, TextBox3.Text, TextBox4.Text, TextBox7.Text, TextBox5.Text, TextBox9.Text, TextBox8.Text, TextBox11.Text)) 

    lnkr.Connection = con 
    con.Open() 
    lnkr.ExecuteNonQuery() 

    con.Close() 
+1

[SQLインジェクションアラート](http://msdn.microsoft.com/en-us/library/ms161953%28v=sql.105%29.aspx) - SQL文を連結しない** - ** SQLのインジェクションを避けるために**パラメータ化されたクエリ**を使用してください –

+0

私の親愛なる私の英語は強くなく、私は正しい方法でこのコードが必要です私は私のプロジェクトを明日提供する必要があります私はたくさんの質問ですが、正しいコード。 :( –

+0

生徒名=> [生徒名]、生年月日=> [休業日]など....フィールド名は空白を含んでいないか、角括弧[]で囲む必要があります[ – nabuchodonossor

答えて

0

を助ける必要なものは考えていませんOK:

String.Format("insert into project ([Student Name], [Days Absent], [Classes Absent], Arabic, Islamic, English, Math, Biology, Chemistry, Physic, Computer, [Day Offs]) values ('{0}', {1}, {2}, {3}, {4}, {5}, {6}, {7}, {8}, {9}, {10}, {11}, {12}", TextBox1.Text, TextBox10.Text, TextBox12.Text, TextBox2.Text, TextBox6.Text, TextBox3.Text, TextBox4.Text, TextBox7.Text, TextBox5.Text, TextBox9.Text, TextBox8.Text, TextBox11.Text)) 

はできませんがポジションが正しいかどうかを確認します。

関連する問題