sql-int x = cmd.ExecuteNonQuery(); 附近有语法错误

作者:用户 来源:互联网 浏览:1152 次 时间:2016-01-15 13:47:38

sqlc#

sql-int x = cmd.ExecuteNonQuery(); 附近有语法错误 - 摘要: intx=cmd.ExecuteNonQuery();附近有语法错误stringconnString="server=.;database=sztsl;integratedsecurity=true"

问题描述

int x = cmd.ExecuteNonQuery(); 附近有语法错误
    string connString = "server = .;database = sztsl; integrated security = true";

    private void btnDadd2_Click(object sender, EventArgs e)
    {
        SqlConnection conn = new SqlConnection(connString);
        conn.Open();
        string sql = string.Format("insert into Daily(Date,StarTime,Endtime,Person,Failure,Reason,Solution,Message) values ('{0}','{1}','{2}','{3}','{4}','{5}','{6}','{7}'",txtDdate.Text, txtDstartime.Text, txtDendtime.Text, txtDperson.Text, txtDfailure.Text, txtDreason.Text, txtDstartime.Text, txtDmessage.Text);
        SqlCommand cmd = new SqlCommand();
        cmd.CommandText = sql;
        cmd.CommandType = CommandType.Text;
        cmd.Connection = conn;
       **int x = cmd.ExecuteNonQuery();** 调试提示这里:附近有语法错误
        conn.Close();
        if (x >= 1)
            MessageBox.Show("Succeed", "Prompt",MessageBoxButtons.OK);
        MessageBox.Show("Failure", "Prompt", MessageBoxButtons.OK);

    }

解决方案

找到原因了,sql語句中少了個:)。真是麻煩大家了。

解决方案二:

把实际的sql放到数据库里面执行一下。看是否会报错。

解决方案三:

很有可能是时间格式问题。而且这种方式会造成 SQL Injection的问题。最好用 Parameter。

解决方案四:

Date是关键字,需要用方括号转义。

【云栖快讯】诚邀你用自己的技术能力来用心回答每一个问题,通过回答传承技术知识、经验、心得,问答专家期待你加入!  详情请点击
云栖社区(yq.aliyun.com)为您免费提供sql-int x = cmd.ExecuteNonQuery(); 附近有语法错误相关信息,包括 sql c# 的信息 ,所有sql-int x = cmd.ExecuteNonQuery(); 附近有语法错误相关内容均不代表云栖社区的意见! 该页面h5页面的地址是:https://m.aliyun.com/yunqi/wenzhang/show_10935,您可以点击sql-int x = cmd.ExecuteNonQuery(); 附近有语法错误-手机站访问。
弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率

40+云计算产品,6个月免费体验

现在注册,免费体验40+云产品,及域名优惠!

云服务器9.9元/月,大学必备

热点导航