我想输入一些数据到我有权访问的数据库中,但只有在某些行(由于条件你会在代码中看到),但它会抛出错误:'查询输入必须包含至少一个表或查询。'但我不确定我需要做些什么来解决这个问题。C#访问INSERT INTO查询与条件
我的代码是:
for (int i = 0; i < numberOfPlayers; i++)
{
OleDbConnection connection = new OleDbConnection(CONNECTION STRING HERE);
OleDbCommand command = new OleDbCommand();
connection.Open();
command.CommandText = "INSERT INTO TotalPlayerName ([Team], [Complete]) VALUES ('1', true) WHERE Team = '' AND Complete = false AND Rating = " + team1List[i];
command.CommandType = CommandType.Text;
command.Connection = connection;
command.ExecuteNonQuery();
connection.Close();
}
您是否尝试插入新数据或更新现有数据? – juharr
可能重复http://stackoverflow.com/questions/21437458/getting-the-error-query-input-must-contain-at-least-one-table-or-query 您似乎试图做一个UPDATE并使用INSERT来完成它。 –
为什么不把'command.ExecutNonQuery()'包在'try {} catch {}的周围,看看它是否在抛出一个错误..你的表的主键是什么..是它'团队'尝试插入一个像'99'这样的数字只是为了看到..我敢打赌,这是一个尝试插入重复键的问题也转换你的插入语句来利用'参数' – MethodMan