This code is trying to add one row of five columns to a table called KDistrictBridge. It doesn't do it. I get a message about declaring a scalar variable @EeID. What about all the other variables? Is @EeID sczalar because I designated it as primary key? What else is wrong with this code? Many thanks for your help. ' Ddataset is defined at start of Sub Button1_Click() Dim strKDisctBridge As String = "SELECT * FROM KDisctBridge WHERE EeID=@EeID " Dim tblKDisctBridge As New SqlCommand(strKDisctBridge, Ddataset) Dim sqlInsert As String = "INSERT INTO KDistrictBridge " & _ "(EeID,DdID,District,CcID,DisctSet) VALUES " & _ "(@EeID,@DdID,@District,@CcID,@DisctSet)" Try ' make the data adapter Dim da As New SqlDataAdapter da.SelectCommand = New SqlCommand(strKDisctBridge, Ddataset) ' make and fill the KDisctBridge dataset Dim ds As New DataSet da.Fill(ds, "KDisctBridge") ' get the datatable out of the Ddataset list of tables Dim dt As DataTable = ds.Tables("KDisctBridge") ' add a row to the table Dim newrow As DataRow = dt.NewRow newrow("EeID") = 1 newrow("DdID") = 2 newrow("District") = "Able" newrow("CcID") = 3 newrow("DisctSet") = "Baker" dt.Rows.Add(newrow) ' insert the new row ' create the command Dim insertCmd As New SqlCommand(sqlInsert, Ddataset) insertCmd.Parameters.Add(New SqlParameter("", "EeID")) insertCmd.Parameters.Add(New SqlParameter("", "DdID")) insertCmd.Parameters.Add(New SqlParameter("", "District")) insertCmd.Parameters.Add(New SqlParameter("", "CcID")) insertCmd.Parameters.Add(New SqlParameter("", "DisctSet")) da.InsertCommand = insertCmd da.Update(ds, "KDisctBridge") Catch ex As SqlException MsgBox("error at catch" & ex.ToString()) Console.WriteLine("Error: " & ex.ToString()) Finally Ddataset.Close() End Try End Using