Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/323.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/scala/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用sql连接此项目_C#_Sql Server_Asp.net Mvc_Sqlconnection - Fatal编程技术网

C# 如何使用sql连接此项目

C# 如何使用sql连接此项目,c#,sql-server,asp.net-mvc,sqlconnection,C#,Sql Server,Asp.net Mvc,Sqlconnection,executenonquery()错误c# 这就是我的代码的样子 con.Open(); String name = textBox1.Text.ToString(); String address = textBox2.Text.ToString(); String id = textBox3.Text.ToString(); int iid = Int32.Parse(id); String semester = textBox4.Text.ToString(); int i_sem

executenonquery()
错误c# 这就是我的代码的样子

con.Open();

String name = textBox1.Text.ToString();
String address = textBox2.Text.ToString();

String id = textBox3.Text.ToString();
int iid = Int32.Parse(id);

String semester = textBox4.Text.ToString();
int i_sem = Int32.Parse(semester);

String field = comboBox1.SelectedItem.ToString();

String qry = "insert into Table values('" + name + "','" + address + "'," + iid + "," + i_sem + ",'" + field + "',)";

SqlCommand cmd = new SqlCommand(qry, con);

cmd.ExecuteNonQuery();
executenonquery()
总是让我有麻烦

int i = cmd.ExecuteNonQuery();

您需要解决两个问题:

  • 删除查询中的最后一个
  • 我不知道您的数据库中是否有名为table的表,但您应该检查名称是否正确
  • 当您不知道如何更正代码时,最好使用try-catch语句来理解代码中的真正问题。关于如何在C#代码中处理SQL异常
  • 您得到的是SqlException,因为您的查询语法错误,但有另一种方法可以将SQL参数添加到查询中,而无需使用字符串变量。您可以使用
    SqlParameterCollection.AddWithValue(String,Object)
    方法来获得相同的结果,并避免SQL注入
  • command.Connection=连接;
    command.CommandType=CommandType.Text;
    command.CommandText=“将值(@name、@address、@id、@sement、@field)插入到您的TableName(名称、地址、id、学期、字段)中”;
    command.Parameters.AddWithValue(“@name”,name);
    command.Parameters.AddWithValue(“@address”,address);
    command.Parameters.AddWithValue(“@id”,iid);
    command.Parameters.AddWithValue(“@sement”,i_sem);
    command.Parameters.AddWithValue(“@field”,field);
    尝试
    {
    connection.Open();
    int recordsafected=command.ExecuteNonQuery();
    }
    捕获(SqlException)
    {
    //这里出错
    }
    最后
    {
    connection.Close();//如果不需要保持连接打开,请关闭连接
    }
    
    更多信息:

    • 与此主题相关

    我已经看到多个问题,但请分享您希望我们解决的问题。我们不知道您收到了什么错误消息…您的SQL是错误的。当我按insert按钮将文件存储在sql表中时,末尾有
    。。。。System.Data.SqlClient.SqlException(0x80131904):表值附近的语法不正确!请用这些错误信息更新问题您的表名是什么?似乎需要在insert脚本中使用表名更新表。