我试图使用使用OLE DB在C#中的MS Access数据库,但每一次的数据库负载不保留旧的数据。OLE DB覆盖旧数据库
这是我的代码:
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=Databases\\Database.accdb;Persist Security Info=False;";
OleDbConnection connection = new OleDbConnection(connectionString);
OleDbCommand command = connection.CreateCommand();
command.CommandText = "INSERT INTO test (userID, name) VALUES(?, ?)";
// Setting parameters to random integer and string
command.Parameters.Add(new OleDbParameter("@userID", randomID));
command.Parameters.Add(new OleDbParameter("@name", randomName));
command.ExecuteNonQuery();
出于测试目的,我使用一个随机生成的ID和名称。如果我在MS Access中检查数据库,则每次都会覆盖数据。我错过了什么吗?
我使用此代码创建表:
OleDbCommand command = connection.CreateCommand();
command.CommandText = "CREATE TABLE test (" +
"userID INTEGER NOT NULL," +
"name TEXT(20) NOT NULL," +
"PRIMARY KEY(userID)" +
")";
command.ExecuteNonQuery();
目前尚不清楚。每次数据库加载时,你的意思是什么_? – Steve
@Steve我的意思是,每次我打开上面的代码数据库连接 – Mrten
@LarsTech错误,我做的是,在实际的代码 – Mrten