cmd.ExecuteNonQuery();'“?”附近有语法错误。 100
急急急!!!求解决!!!求大神!!!using(SqlConnectionconn=newSqlConnection()){//数据库连接字符串conn.Connecti...
急急急!!!求解决!!!求大神!!!
using (SqlConnection conn = new SqlConnection())
{
// 数据库连接字符串
conn.ConnectionString = "Initial Catalog=hqc;Data Source= JTKP;Integrated Security=True";
conn.Open(); // 打开数据库
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn; // 设置command对象的数据库连接
// 添加语句,如果对语句有疑问,请参阅《.net中对常用数据库的操作说明》
cmd.CommandText = "insert into Message(UserName,[Content],ip,dtmDate) values(?,?,?,?)";
cmd.Parameters.Add(new SqlParameter("1", TextBox1.Text));
cmd.Parameters.Add(new SqlParameter("2", TextBox2.Text));
cmd.Parameters.Add(new SqlParameter("3", GetRemoteIP()));
cmd.Parameters.Add(new SqlParameter("4", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")));
int i = cmd.ExecuteNonQuery();
if (i> 0) // 如果返回的影响行数大于0,说明插入成功
{
TextBox1.Text = "";
TextBox2.Text = "";
ClientScript.RegisterStartupScript(GetType(), "", "alert('留言成功')", true);
}
else
{
ClientScript.RegisterStartupScript(GetType(), "", "alert('留言失败')", true);
}
}
} 展开
using (SqlConnection conn = new SqlConnection())
{
// 数据库连接字符串
conn.ConnectionString = "Initial Catalog=hqc;Data Source= JTKP;Integrated Security=True";
conn.Open(); // 打开数据库
SqlCommand cmd = new SqlCommand();
cmd.Connection = conn; // 设置command对象的数据库连接
// 添加语句,如果对语句有疑问,请参阅《.net中对常用数据库的操作说明》
cmd.CommandText = "insert into Message(UserName,[Content],ip,dtmDate) values(?,?,?,?)";
cmd.Parameters.Add(new SqlParameter("1", TextBox1.Text));
cmd.Parameters.Add(new SqlParameter("2", TextBox2.Text));
cmd.Parameters.Add(new SqlParameter("3", GetRemoteIP()));
cmd.Parameters.Add(new SqlParameter("4", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")));
int i = cmd.ExecuteNonQuery();
if (i> 0) // 如果返回的影响行数大于0,说明插入成功
{
TextBox1.Text = "";
TextBox2.Text = "";
ClientScript.RegisterStartupScript(GetType(), "", "alert('留言成功')", true);
}
else
{
ClientScript.RegisterStartupScript(GetType(), "", "alert('留言失败')", true);
}
}
} 展开
1个回答
展开全部
你查一查你的Message数据表中是不是应该还有一个不允许为null的字段,而你在这一句insert语句中却没有对它进行赋值,建议你重新调试下你的sql语句
更多追问追答
追答
很久没有写过这种sql语句了,一般都是直接做存储过程,把参数传给存储过程,让数据库自己执行,或者主键都不用自增变量,基本都是可以写一个唯一性方法
个人建议你如果这样写的话,可以采用insert into Message values(?,?,?,?),然后传进去的参数顺序与你数据的字段顺序一致试试,好久没写过这种语句了
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询