SQL-将行从表复制到具有修改值的表
本文关键字:修改 复制 SQL- | 更新日期: 2023-09-27 18:29:57
你好,我正试图将多行从表复制到另一个表,如下所示:
DataSet dt2 = new DataSet();
SqlDataAdapter SDA2 = new SqlDataAdapter("SELECT text,castka FROM zajsluz WHERE akce='" + tentoradek + "' and rocnik='" + klientClass.Rocnik() + "'", spojeni);
SDA2.Fill(dt2);
spojeni.Close();
string sqlcom2 = "INSERT INTO zajsluz(akce,text,castka,rocnik) values (@akce,@text,@castka,@rocnik)";
SqlCommand sc2 = new SqlCommand(sqlcom2, spojeni);
sc2.Parameters.AddWithValue("@akce", zakce.Text);
sc2.Parameters.AddWithValue("@rocnik", klientClass.Rocnik());
sc2.Parameters.AddWithValue("@text", dt2.Tables["zajsluz"].Columns["text"]);
sc2.Parameters.AddWithValue("@castka", dt2.Tables["zajsluz"].Columns["castka"]);
spojeni.Open();
sc2.ExecuteNonQuery();
spojeni.Close();
但我明白:执行sc2.Parameters.AddWithValue("@text", dt2.Tables["zajsluz"].Columns["text"]);
时,对象引用未设置为对象的实例
您需要insert
的insert . . . select
形式。结构看起来像:
INSERT INTO zajsluz(akce, text, castka, rocnik)
SELECT @skce, text, castka, @rocnik
FROM zajsluz
WHERE akce='" + tentoradek + "' and rocnik='" + klientClass.Rocnik() + "'"
您需要插入变量的值才能得到您想要的值。