C#中的未处理的“System.Data.SqlClient.SqlException”类型的异常出现在 system.data.dll
privatevoidbutton1_Click(objectsender,EventArgse){try{using(SqlConnectioncon=newSqlCo...
private void button1_Click(object sender, EventArgs e)
{
try
{
using (SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=demo;Integrated Security=True;"))
{
con.Open();
using (SqlCommand com = new SqlCommand())
{
com.CommandText = "alter table Table_Stu add(addr char(20)) ";
com.ExecuteNonQuery();
}
//MessageBox.Show("插入列成功!");
}
}
catch (Exception xe)
{
xe.ToString();
MessageBox.Show("出现错误!");
}
} 展开
{
try
{
using (SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=demo;Integrated Security=True;"))
{
con.Open();
using (SqlCommand com = new SqlCommand())
{
com.CommandText = "alter table Table_Stu add(addr char(20)) ";
com.ExecuteNonQuery();
}
//MessageBox.Show("插入列成功!");
}
}
catch (Exception xe)
{
xe.ToString();
MessageBox.Show("出现错误!");
}
} 展开
展开全部
con.Open();
using (SqlCommand com = new SqlCommand())
{
com.CommandText = "alter table Table_Stu add(addr char(20)) ";
com.Connection = con; //把SqlCommand的数据连接设为con
com.ExecuteNonQuery();
}
把SqlCommand的数据连接设为con。
其实初始化的时候就可以写成:
SqlCommand com = new SqlCommand(“CommandText内容”,con)
using (SqlCommand com = new SqlCommand())
{
com.CommandText = "alter table Table_Stu add(addr char(20)) ";
com.Connection = con; //把SqlCommand的数据连接设为con
com.ExecuteNonQuery();
}
把SqlCommand的数据连接设为con。
其实初始化的时候就可以写成:
SqlCommand com = new SqlCommand(“CommandText内容”,con)
更多追问追答
追问
using (SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=demo;Integrated Security=True;"))con.Open();到这儿不是已经建立连接了吗?com.Connection = con; 为什么还需要这个呢?
追答
程序需要知道SqlCommand是使用哪个SqlConnection来执行的(程序复杂的时候con可能会不止一个)。
还有个习惯是con先定义好,不用立即建立连接,con.Open;放在ExecuteNonQuery()之前打开,数据库执行完成之后直接con.Close()以免忘记关闭连接。
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询