sqlconnection 不报错
来源:百度知道 编辑:UC知道 时间:2024/05/29 13:50:55
m_SqlConnection = new SqlConnection(connectionString )
这里connectionString我定义了一个不存在的数据库
但是
try{
m_SqlConnection = new SqlConnection(connectionString )
}catch(Exception e){…………}
捕捉不到错误
但是调试的时候又显示m_SqlConnection的servervision throw InvalidOperationException
try{
}
中的
Catch
要有错误才会报错呀。现在来分析您的代码
try{
m_SqlConnection = new SqlConnection(connectionString ) //本句只是实例化一个 connection 对象,并没有执行
}catch(Exception e){…………}
m_SqlConnection =new SqlConnection(); //如果不带参数m_SqlConnection=connectionString;
这种赋值语句怎么会错了
如果加一个句
m_SqlConnection.Open()
此时就会报错,为什么呢?因为你给的连接字符中数据库不存在.
m_SqlConnection.Open() 这定句用到你所提供的连接字符串去连接数据库。而m_SqlConnection = new SqlConnection(connectionString);只是创建一个SqlConnection实体对象,他的数据库连接字符串为connectionString;所以不会报错。
以下测试通过:
try{
m_SqlConnection = new SqlConnection(connectionString )
m_SqlConnection.Open(); //加上这句才会产生异常
}catch(Exception e){…………}
注:你上面那样的确没有产生异常,因这你并没有开始连接数据库!
只有当你开始打开连接时才会产生异常!
我按照你说的怎么调试都没有报这个异常
static void Main(string[] args)
{
string connectionString = "server=.;database=f;integrated security=true;";