2012-02-23 2 views
1

У меня есть две таблицы, и форма содержит текстовое поле, поэтому мне нужно добавить строки таблицы 1 в таблицу 2 и взять значение в текстовом поле для каждой строки добавляется в таблице 2.Как добавить параметр для вставки команды в код vb.net

я есть вставки синтаксиса, но это необходимо модификации:

INSERT INTO table2(column3,column4) 
SELECT column1 + @parameter 
FROM table1 
WHERE column2=true 

table1: column1 column2

table2: колонка3 column4

Form1: она есть TextBox1

полный код:

Dim con As New OleDbConnection 
Dim cmd As New OleDbCommand 
Try 
    con.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\DellXPS\Desktop\mDB.accdb" 

    con.Open() 
    cmd.Connection = con 
    cmd.CommandText = "INSERT INTO table2(column3,column4) SELECT column1 + @parameter FROM table1 WHERE column2=true" 

    cmd.Parameters.Add("@parameter", OleDbType.VarChar).Value = TextBox1.Text 
    cmd.ExecuteNonQuery() 
Catch ex As Exception 
    MessageBox.Show("Error while inserting record on table..." & ex.Message, "Insert Records") 
Finally 
    con.Close() 
End Try 

я считаю, что неправильно в синтаксисе вставки ,, хмель скорректированному

+0

I нашел правильный код cmd.CommandText = "INSERT INTO table2 (column3, column4) SELECT column1, @parameter FROM table1 WHERE column2 = true" вот оно :) – ebrahim

ответ

1

Используйте следующий код для добавления параметра со значением в команде:

cmd.Parameters.AddWithValue("@parameter",TextBox1.Text);