DB2連線類別
代表已開啟的資料庫連線。
- 名稱空間:
IBM.Data.DB2- 組件:
IBM.Data.DB2(在IBM.Data.DB2.dll中)
.NET Framework 2.0 3.0、3.5 及 4.0 繼承階層
System.Object
System.MarshalByRefObject
System.ComponentModel.Component
System.Data.Common.DbConnection
IBM.Data.DB2.DB2Connection
.NET Framework 2.0 3.0、3.5 及 4.0 語法
[Visual Basic]
NotInheritable Public Class DB2Connection
Inherits DbConnection
Implements ICloneable, IDbConnection
[C#]
public sealed class DB2Connection : Component, ICloneable,
IDbConnection
[C++]
public __gc __sealed class DB2Connection : public Component,
ICloneable, IDbConnection
[JScript]
public class DB2Connection extends Component implements
ICloneable, IDbConnection
備註
DB2Connection 物件代表與連線字串中所指定資料庫的唯一連線。 在主從式資料庫系統的情況下,它相當於伺服器的網路連線。
DB2Connection 物件會使用原生資源。 在 DB2Connection 物件超出範圍之前,您應該一律透過呼叫 關閉 或 處置 來明確地關閉任何開啟的 DB2Connection 物件。 如果不這樣做,則會將這些原生資源釋放給記憶體回收,而這可能不會立即釋放它們。 這最終可能導致 IBM® Data Server Provider for .NET 或資料伺服器資源不足或達到上限,導致零星失敗。 例如,當一些連線正在等待記憶體回收器刪除時,您可能會遇到 連線數上限相關錯誤。 透過呼叫 Close 或 Dispose 來明確地關閉連線,可更有效地使用原生資源,加強可調整性並增進整體應用程式效能。
如果 DB2®指令 類別的其中一個 Execute 方法導致嚴重 DB2異常狀況 , DB2Connection 可能會關閉。 不過,使用者可以重新開啟連線並繼續。
建立 DB2Connection 物件實例的應用程式,可以設定宣告式或命令式安全需求,要求所有直接及間接呼叫端對程式碼具有足夠的許可權。 DB2Connection 會使用 DB2許可權 物件來建立安全需求。 使用者可以使用 DB2PermissionAttribute 物件來驗證其程式碼是否具有足夠的許可權。 使用者和管理者也可以使用「程式碼存取安全原則工具 (Caspol.exe)」來修改機器、使用者和企業層次的安全原則。 如需相關資訊,請參閱 Microsoft .NET Framework SDK 文件中的「保護應用程式安全」。
範例
[Visual Basic , C#] 下列範例會建立 DB2指令 及 DB2Connection。 DB2Connection 會開啟並設為 DB2Command.Connection 內容。 然後,範例會呼叫 DB2Command.ExecuteNonQuery,並關閉連線。 為了達成此目的,會傳遞連線字串及查詢字串 (即 SQL INSERT 陳述式) 給 ExecuteNonQuery 。
[Visual Basic]
Public Sub InsertRow(myConnectionString As String)
' If the connection string is null, use a default.
If myConnectionString = "" Then
myConnectionString = "DATABASE=SAMPLE;"
End If
Dim myConn As New DB2Connection(myConnectionString)
Dim myInsertQuery As String = "INSERT INTO STAFF (ID, NAME) Values(...)"
Dim myDB2Command As New DB2Command(myInsertQuery)
myDB2Command.Connection = myConn
myConn.Open()
myDB2Command.ExecuteNonQuery()
myConn.Close()
End Sub
[C#]
public void InsertRow(string myConnectionString)
{
// If the connection string is null, use a default.
if(myConnectionString == "")
{
myConnectionString = "DATABASE=SAMPLE;";
}
DB2Connection myConn = new DB2Connection(myConnectionString);
string myInsertQuery = "INSERT INTO STAFF (ID, NAME) Values(...)";
DB2Command myDB2Command = new DB2Command(myInsertQuery);
myDB2Command.Connection = myConn;
myConn.Open();
myDB2Command.ExecuteNonQuery();
myConn.Close();
}
螺紋安全
此類型的任何公用靜態 (Visual Basic 中的Shared ) 成員對於多執行緒作業都是安全的。 不保證任何實例成員都是安全執行緒。