我正在将字符串转换为整数,而不是在我的帖子表中插入此整数。
int currTopicID = Convert.ToInt32(id.Text);
SqlCommand cmd = new SqlCommand("INSERT INTO post VALUES(currTopicID)", con);
问题是当我进行插入时currTopicID没有被识别为整数。任何帮助将不胜感激。
答案 0 :(得分:2)
您可以改用参数:
int currTopicID = Convert.ToInt32(id.Text);
SqlCommand cmd = new SqlCommand("INSERT INTO post VALUES(@currTopicID)", con);
cmd.Parameters.Add("@currTopicID", SqlDbType.Int).Value = currTopicID.Tostring();
//OR cmd.Parameters.AddWithValue("@currTopicID",currTopicID.Tostring());
cmd.ExecuteNonQuery();
此致
答案 1 :(得分:1)
改为使用,
SqlCommand cmd = new SqlCommand("INSERT INTO post VALUES("+currTopicID.ToString()+")", con);
或使用参数化查询。
答案 2 :(得分:0)
在MS SQL中传递变量时最好使用参数。 甚至更好地使用存储过程
答案 3 :(得分:0)
您应该使用带参数的存储过程。通过这样做,你将避免SQL注入。