讀取資料庫資料返回OdbcDataReader函數(Odbc)__html
來源:互聯網
上載者:User
// 讀取資料庫資料返回OdbcDataReader函數(Odbc)
public OdbcDataReader GetOdbcReader(String MySQL)
{
// 資料庫連接參數(對用戶端應用程式設定檔的訪問)
string strConn = @ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;
// 建立串連資料庫的一個開啟串連
OdbcConnection MyConn = new OdbcConnection(strConn);
try // 正常運行
{
// 使用 ConnectionString 所指定的屬性設定開啟資料庫連接
MyConn.Open();
// 資料庫SQL語句
String strSQL = @MySQL.Trim().ToString();
// 要對資料庫執行的一個SQL語句或預存程序
OdbcCommand MyComm = new OdbcCommand(strSQL, MyConn);
// 提供一種從資料庫讀取只進的行流的一種方式
OdbcDataReader MyReader = MyComm.ExecuteReader();
// 讀取資料,判斷是否有資料
if (MyReader.HasRows)
{
// 返回成功
return MyReader;
}
else
{
Console.Write("<script language=JavaScript>");
Console.Write("alert('系統提示:資料讀取失敗或網路忙,請稍後再試。');");
Console.Write("</script>");
if ((MyReader != null) & (MyReader.IsClosed != true))
{
// 關閉
MyReader.Close();
}
// 判斷資料庫連接
if (MyConn.State == ConnectionState.Open)
{
// 關閉資料庫連接
MyConn.Close();
}
// 返回失敗
return null;
}
}
catch (SqlException) // 資料庫操作異常處理
{
Console.Write("<script language=JavaScript>");
Console.Write("alert('系統提示:當前資料庫操作失敗或網路忙,請稍後再試。');");
Console.Write("</script>");
if (MyConn.State == ConnectionState.Open)
{
// 關閉資料庫連接
MyConn.Close();
}
// 返回失敗
return null;
}
catch // 異常處理
{
if (MyConn.State == ConnectionState.Open)
{
// 關閉資料庫連接
MyConn.Close();
}
// 返回失敗
return null;
}
finally // 執行完畢清除在try塊中分配的任何資源
{
if (MyConn.State == ConnectionState.Open)
{
// 關閉資料庫連接
//MyConn.Close();
}
}
}