我有一个 Access 数据库,其中包含名为 [TermNum] (AutoNumber) 的字段。
我尝试在 Access 数据库中注册终端(通过我的 WebService C#),如下所示:
using (Conn = new OleDbConnection(Connect))
{
Conn.Open();
SQL = "select TermNum from TermNumTbl where DeviceID = '" + DeviceID + "'";
dsView = new DataSet();
adp = new OleDbDataAdapter(SQL, Conn);
adp.Fill(dsView, "TermNumTbl");
adp.Dispose();
try
{
iTermNumTmp = Convert.ToInt32(dsView.Tables[0].Rows.Count);
}
catch
{
iTermNumTmp = 0;
}
if (iTermNumTmp >= 1)
{
return (Convert.ToInt32(dsView.Tables[0].Rows[0][0].ToString().Trim()));
}
else
{
int ID;
SQL = "insert into TermNumTbl (DeviceID,IP) values (@DeviceID,@DeviceIP)";
using (OleDbCommand Cmd4 = new OleDbCommand(SQL, Conn))
{
Cmd4.Parameters.AddWithValue("@DeviceID", DeviceID);
Cmd4.Parameters.AddWithValue("@DeviceIP", DeviceIP);
Cmd4.ExecuteNonQuery();
SQL = "Select @@Identity";
Cmd4.CommandText = SQL;
ID = (int)Cmd4.ExecuteScalar();
}
return ID;
}
}
如果终端存在=返回他的号码
如果终端不存在 = 将他的号码插入数据库并返回此号码
问题是有时它不起作用,我收到此错误:
名为“TermNumTbl”的数据表已属于此数据集