网上百度和谷歌一些东西,感觉讲得模棱两可的,所以自己总结了一下。
try catch finally 一起使用的常见方式是:
在 try 块中获取并使用资源,在 catch 块中处理异常情况,并在 finally 块中释放资源。try 是程式开始需要执行的语句,如果这段语句有误则跳转到catch语句执行,最后再执行finally语句执行,如果try 语句没有错误则直接到finally语句处执行,catch语句就不需要执行了,在finally里面不管是否异常都要执行。
int res;
try
{
代码省略....
res = cmd.ExecuteNonQuery();// 方法执行SQL语句并且不返回数据,返回数据影响了多少行 int类型
}
catch (Exception ex)
{
throw ex;
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
}
}
return res;
using 关键字有两个主要用途:
作为指令,用于为命名空间创建别名或导入其他命名空间中定义的类型。比如:using System.Linq;
作为语句,用于定义一个范围,在此范围的末尾将释放对象。
using是自动的释放资源,推荐使用,尤其是对于数据库的资源。
DataTable dt = new DataTable();
代码省略....
using (sdr = cmd.ExecuteReader(CommandBehavior.CloseConnection))//方法将SQL语句发送给SqlConnection并生产一个SqlDataReader类对象,该SqlDataReader对象包含SQL命令返回的数据
{
dt.Load(sdr); //load查询dataread查询的结果
//当using执行完括号里面的代码后,sdr会关闭而跟sdr关联的conn也要关闭
}
return dt;