+++ 本例演示如何判断数据库的状态
protected void Page_Load(object sender, EventArgs e)
{
string connStr = "data source=ora9; uid=scott; pwd=tiger; unicode=true";
string sqlStr = "SELECT * FROM EMP";
System.Data.OracleClient.OracleConnection conn = new System.Data.OracleClient.OracleConnection(connStr);
conn.Open();
if (conn.State == ConnectionState.Closed)
{
conn.Open();
}
System.Data.OracleClient.OracleCommand cmd = conn.CreateCommand();
cmd.CommandText = sqlStr;
cmd.CommandType = CommandType.Text;
try
{
System.Data.OracleClient.OracleDataReader dr = cmd.ExecuteReader();
Response.Write("EMP表的字段数量:" + dr.FieldCount + "</br>");
while (dr.Read())
{
Response.Write(dr.GetInt32(0).ToString() + ", " + dr.GetString(1) + ", " +
dr.GetOracleString(2).ToString() + ", " + dr.GetInt32(3).ToString() + ", " +
dr.GetDateTime(4).ToString() + ", " + dr.GetDecimal(5).ToString() + "</br>");
}
dr.Close();
dr.Dispose();
cmd.Dispose();
}
catch (Exception ex)
{
Response.Write(ex.Message + "</br>");
}
finally
{
if (conn.State == ConnectionState.Open)
{
conn.Close();
conn.Dispose();
}
}
}
+++ 说明:
1) 判断数据库的状态相当重要。编程时要保证,访问完数据库后要立刻关闭。简单来说,当你连接数据库后,数据库会为你分配资源,如果在你访问完数据库后不关闭与数据库的连接,并且释放资源,时间长了会消耗很多数据库资源,结果你能想象到。
2) 因此,在项目中,通常划分为UI层、业务层和数据库层。应该在数据库层规范数据库的访问,保证程序的稳定性。
ADO.NET_第三篇_判读数据库状态
最新推荐文章于 2022-02-24 16:45:23 发布