数据不会被插入数据库,heidisql
Data wont get inserted into database, heisql
我想在我的数据库 (heidisql) 中插入一些数据。
但它不会被插入。知道为什么吗?
在我的table中loginname
、email
、algo
是varchar
。 hash
salt
是 char
。 stretch 的数据类型为 int
MySqlCommand cmd2;
cmd2 = dbConStr.CreateCommand();
cmd2.CommandText = "INSERT INTO `user` (Loginname, Email, Algo, Stretch, `Hash`, Salt) VALUES ('@loginname', '@email', '@algo', '@stretch','@hash', '@salt');";
cmd2.Parameters.Add("@loginname", MySqlDbType.VarChar).Value = loginname;
cmd2.Parameters.Add("@email", MySqlDbType.VarChar).Value = email;
cmd2.Parameters.Add("@algo", MySqlDbType.VarChar).Value = algo;
cmd2.Parameters.Add("@stretch", MySqlDbType.VarChar).Value = Convert.ToInt32(stretch);
cmd2.Parameters.Add("@hash", MySqlDbType.VarChar).Value = hash;
cmd2.Parameters.Add("@salt", MySqlDbType.VarChar).Value = salt;
MySqlDataReader r2 = cmd.ExecuteReader();
while (r2.Read())
{ }
r2.Close();
在 ExecuteReader 旁边,应该是 ExecuteNonQuery()
,您声明的插入参数错误,不应该用单引号引起来。尝试:
INSERT INTO `user` (Loginname, Email, Algo, Stretch, `Hash`, Salt) VALUES (@loginname, @email, @algo, @stretch, @hash, @salt)
顺便说一句,有些数据库有不同的参数分隔符,不确定在 heidisql 中是否是 '@'
我想在我的数据库 (heidisql) 中插入一些数据。 但它不会被插入。知道为什么吗?
在我的table中loginname
、email
、algo
是varchar
。 hash
salt
是 char
。 stretch 的数据类型为 int
MySqlCommand cmd2;
cmd2 = dbConStr.CreateCommand();
cmd2.CommandText = "INSERT INTO `user` (Loginname, Email, Algo, Stretch, `Hash`, Salt) VALUES ('@loginname', '@email', '@algo', '@stretch','@hash', '@salt');";
cmd2.Parameters.Add("@loginname", MySqlDbType.VarChar).Value = loginname;
cmd2.Parameters.Add("@email", MySqlDbType.VarChar).Value = email;
cmd2.Parameters.Add("@algo", MySqlDbType.VarChar).Value = algo;
cmd2.Parameters.Add("@stretch", MySqlDbType.VarChar).Value = Convert.ToInt32(stretch);
cmd2.Parameters.Add("@hash", MySqlDbType.VarChar).Value = hash;
cmd2.Parameters.Add("@salt", MySqlDbType.VarChar).Value = salt;
MySqlDataReader r2 = cmd.ExecuteReader();
while (r2.Read())
{ }
r2.Close();
在 ExecuteReader 旁边,应该是 ExecuteNonQuery()
,您声明的插入参数错误,不应该用单引号引起来。尝试:
INSERT INTO `user` (Loginname, Email, Algo, Stretch, `Hash`, Salt) VALUES (@loginname, @email, @algo, @stretch, @hash, @salt)
顺便说一句,有些数据库有不同的参数分隔符,不确定在 heidisql 中是否是 '@'