SQL 异常未处理 - System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的未处理异常

Posted

技术标签:

【中文标题】SQL 异常未处理 - System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的未处理异常【英文标题】:SQL Exception was unhandled-An unhandled exception of type 'System.Data.SqlClient.SqlException' occurred in System.Data.dll 【发布时间】:2017-11-10 00:55:17 【问题描述】:

SQL Exception was unhandled - System.Data.dll 中发生 System.Data.SqlClient.SqlException 类型的未处理异常

 public DataSet getCustomers()
    
        string Connectionstring = ConfigurationManager.ConnectionStrings["DbConn"].ToString();
        SqlConnection objConnection = new SqlConnection(Connectionstring);
        objConnection.Open();

        SqlCommand objCommand = new SqlCommand("Select * from Customer '"                                                  ,
                                              objConnection);
        DataSet objDataSet = new DataSet();
        SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand);
        objAdapter.Fill(objDataSet);

        objConnection.Close();
        return objDataSet;

    

【问题讨论】:

请提供有关该问题的更多详细信息,以便我们提供帮助。 【参考方案1】:

在客户' " 之后看起来像一个额外的撇号:

SqlCommand objCommand = new SqlCommand("Select * from Customer '", objConnection);

【讨论】:

【参考方案2】:

从查询命令中删除':

SqlCommand objCommand = new SqlCommand("Select * from Customer" , objConnection);

【讨论】:

3 小时后你还是给出了同样的答案??【参考方案3】:

将您的代码包含在 Try Catch 中:

        public DataSet getCustomers()
    
        try
        
            string Connectionstring = ConfigurationManager.ConnectionStrings["DbConn"].ToString();
            SqlConnection objConnection = new SqlConnection(Connectionstring);
            objConnection.Open();

            SqlCommand objCommand = new SqlCommand("Select * from Customer '",
                                                  objConnection);
            DataSet objDataSet = new DataSet();
            SqlDataAdapter objAdapter = new SqlDataAdapter(objCommand);
            objAdapter.Fill(objDataSet);

            objConnection.Close();
            return objDataSet;

        
        catch (Exception ex)
        
            Trace.Write(ex.Message);
            return null;
        

    

ex.Message 将是:字符串''后的非闭合引号

只需在客户之后删除 '

【讨论】:

以上是关于SQL 异常未处理 - System.Data.dll 中出现“System.Data.SqlClient.SqlException”类型的未处理异常的主要内容,如果未能解决你的问题,请参考以下文章

ORA-06510: PL/SQL: 未处理的用户定义异常 [Oracle]

Oledb 异常未处理。操作必须使用可更新的查询

系统的一个异常SQL的处理

文件错误?带有未处理异常的子程序不执行任何回滚?

在 C#.NET 中捕获所有未处理异常的简单方法

无法使用 try-catch 处理 SQL 异常 [重复]