我目前正在从用 C# 编写的 Windows 窗体应用程序输入数据。我的数据库是 Microsoft Access 数据库。一切正常接受我不断收到重复我的主键值的错误。我已经在互联网上搜索了一段时间,并没有发现与我的问题有关的太多内容。
我当前的表格设置如下:
Field Name Data
-------------------
ID AutoNumber
MonsterName Text
Drop Text
AmountDropped Text
我当前的 SQL 查询如下:
"INSERT INTO MonsterDrops (MonsterName, Drop, AmountDropped) VALUES ('" +
Monsters.SelectedCells[0].Value.ToString() + "','" + DropName + "'," + Amount + ")"
这给了我错误:“INSERT INTO 语句中的语法错误”
我正在使用此函数执行查询:
private void executeNonQuery(string query)
{
//create a new connection and pass in config settings for it
OleDbConnection db = new OleDbConnection(Properties.Settings.Default.DFUWDBConnectionString);
try
{
//Open the DB
db.Open();
try
{
//create a new command object
OleDbCommand command = new OleDbCommand();
//set the command to be your query
command.CommandText = query;
//set the DB for the query to be performed on
command.Connection = db;
//execute the insert
command.ExecuteNonQuery();
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
}
catch (Exception e)
{
MessageBox.Show(e.Message);
}
finally
{
db.Close();
}
}
我读到如果 Identity 设置为 true,您不必包含 AutoNumber 字段,不确定我的设置是否如此。如何在运行 SQL 查询时让自动编号功能工作???
谢谢!