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);
}
}
}
展开
 我来答
晓峰观星
2015-04-06 · TA获得超过216个赞
知道小有建树答主
回答量:321
采纳率:100%
帮助的人:157万
展开全部
你查一查你的Message数据表中是不是应该还有一个不允许为null的字段,而你在这一句insert语句中却没有对它进行赋值,建议你重新调试下你的sql语句
更多追问追答
追问

大神我数据表是这样的!出来主键不允许为空,其他都是可以赋空的啊!

如何调整SQL语句啊???

追答
很久没有写过这种sql语句了,一般都是直接做存储过程,把参数传给存储过程,让数据库自己执行,或者主键都不用自增变量,基本都是可以写一个唯一性方法
个人建议你如果这样写的话,可以采用insert into Message values(?,?,?,?),然后传进去的参数顺序与你数据的字段顺序一致试试,好久没写过这种语句了
威孚半导体技术
2024-08-19 广告
威孚(苏州)半导体技术有限公司是一家专注生产、研发、销售晶圆传输设备整机模块(EFEM/SORTER)及核心零部件的高科技半导体公司。公司核心团队均拥有多年半导体行业从业经验,其中技术团队成员博士、硕士学历占比80%以上,依托丰富的软件底层... 点击进入详情页
本回答由威孚半导体技术提供
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式