当前位置: 代码迷 >> Sql Server >> 第 1 行: ')' 附近有语法异常
  详细解决方案

第 1 行: ')' 附近有语法异常

热度:440   发布时间:2016-04-24 19:33:56.0
第 1 行: ')' 附近有语法错误。
第 1 行: ')' 附近有语法错误。

SqlConnection conn = BaseClass.DBConn.CyCon();
            conn.Open();
            SqlCommand cmd = new SqlCommand("select count(*) from Film where FilmName='" + textBox2.Text + "'", conn);//查询是否存在当前名字的服务员信息
            int i = Convert.ToInt32(cmd.ExecuteScalar());
         
                cmd = new SqlCommand("insert into Film(FilmID,FilmName,Actor,Director,Publisher,Content,PubDate,Sort) values('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox6.Text + "','" + textBox8.Text + "','" + textBox5.Text + "','" + textBox7.Text + "',)", conn);//如果不存在,进行数据库插入
                cmd.ExecuteNonQuery();
                conn.Close();
                BindData();

                button1.Enabled = true;
                button2.Enabled = false;
                button3.Enabled = false;
                button4.Enabled = false;
                button5.Enabled = true;
                button6.Enabled = false;
                button7.Enabled = true;
                textBox1.Enabled = false;
           好烦啊,都不知道错哪了 是那里问题吗

------解决方案--------------------
"',)" 最后这里多了个逗号,改为 "')"
------解决方案--------------------
应该是拷代码忘了去掉最后那个字段后面的逗号了
------解决方案--------------------

/*将你 代码标红的地方的 逗号去掉..如下.
另,你应该使用参数化语句,别拼接语句
*/

 
     cmd = new SqlCommand("insert into Film(FilmID,FilmName,Actor,Director,Publisher,Content,PubDate,Sort) values('" 
+ textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" 
+ textBox4.Text + "','" + textBox6.Text + "','" + textBox8.Text + "','" 
+ textBox5.Text + "','" + textBox7.Text + "')", conn);//如果不存在,进行数据库插入
                cmd.ExecuteNonQuery();


------解决方案--------------------
打个断点,进行单步调试,一步步的排查错误!!!
------解决方案--------------------
 cmd = new SqlCommand("insert into Film(FilmID,FilmName,Actor,Director,Publisher,Content,PubDate,Sort) values('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox6.Text + "','" + textBox8.Text + "','" + textBox5.Text + "','" + textBox7.Text + "',)", conn);//如果不存在,进行数据库插入

上面多了一个逗号,改成这样试试:

 cmd = new SqlCommand("insert into Film(FilmID,FilmName,Actor,Director,Publisher,Content,PubDate,Sort) values('" + textBox1.Text + "','" + textBox2.Text + "','" + textBox3.Text + "','" + textBox4.Text + "','" + textBox6.Text + "','" + textBox8.Text + "','" + textBox5.Text + "','" + textBox7.Text + "')"
  相关解决方案