C#SQLite数据库如何查询表中是否已经存在这条数据?为什么我插入数据时,总是会报指定的值转换无效?查了所有数据类型和值都是没问题,只有未明显指示出id(主键)的值
SQLiteCommand cmd = new SQLiteCommand("CREATE TABLE IF NOT EXISTS My_table " +
"(id INTEGER PRIMARY KEY NOT NULL, Volatage varchar(50) DEFAULT NULL," +
"Load float DEFAULT NULL, Name varchar(50) DEFAULT NULL, " +
"Min float DEFAULT NULL, Measure float DEFAULT NULL, Max float DEFAULT NULL, " +
"Result varchar(50) DEFAULT NULL " +
")", conn);
MessageBox.Show(Convert.ToString(Convert.ToInt32(cmd.ExecuteNonQuery())));
SQLiteCommand sql = new SQLiteCommand($"select * from My_table where id = {id}", conn);
MessageBox.Show(Convert.ToString(Convert.ToInt32(sql.ExecuteNonQuery())));
if (Convert.ToInt32(sql.ExecuteNonQuery()) == 0)
{
SQLiteCommand sql2 = new SQLiteCommand($"update My_table set Volatage = '{volatage}',Load = {load}, Name = '{name}', Min = {min}, Measure = {measure}, Max ={max}, Result = '{result}' where id = '{id}'", conn);
sql2.ExecuteNonQuery();
}
else
{
SQLiteCommand sql1 = new SQLiteCommand($"insert into My_table(Volatage,Load,Name,Min,Measure,Max,Result) Values('" + volatage + "'," + load + " ,'" + name + " '," + min + ", " + measure + ", " + max + ", '" + result + "')", conn);
sql1.ExecuteNonQuery();
}