使用由 ConnectionString 指定的属性设置打开与数据库的连接。
[Visual Basic]
NotOverridable Public Sub Open() Implements IDbConnection.Open
[C#]
public void Open();
[C++]
public: __sealed void Open();
[JScript]
public function Open();
| 异常类型 | 条件 |
|---|---|
| InvalidOperationException | 连接已打开。 |
| DB2Exception | 打开连接期间发生了连接级别错误。 |
DB2Connection.Open 方法支持 System.EnterpriseServices 名称空间和 System.Transactions 名称空间。
如果连接池已打开且连接可用,那么 DB2Connection 将从连接池中获取一个打开的连接。否则,它将建立与数据库的新连接。
[Visual Basic, C#] 以下示例将创建 DB2Connection,打开它,显示它的一些属性,然后关闭连接。
[Visual Basic]
Public Sub CreateDB2Connection(myConnString As String)
Dim myConnection As New DB2Connection(myConnString)
myConnection.Open()
MessageBox.Show("ServerVersion: " + myConnection.ServerVersion _
+ ControlChars.Cr + "State: " + myConnection.State.ToString())
myConnection.Close()
End Sub
[C#]
public void CreateDB2Connection(string myConnString)
{
DB2Connection myConnection = new DB2Connection(myConnString);
myConnection.Open();
MessageBox.Show("ServerVersion: " + myConnection.ServerVersion
+ "\nState: " + myConnection.State.ToString());
myConnection.Close();
}
在 DB2 for z/OS V10 中,如果在应用程序执行期间服务器已迁移至另一方式,并且如果对 Open 的调用已返回连接(带有已迁移服务器信息),那么对 Open 的后续调用将始终返回连接(带有已迁移服务器信息)。在执行对 Close 的调用时,将重新启动在迁移之前建立的所有连接。
Chaos 隔离级别仅对 DB2® Universal Database for iSeries® 服务器有效。如果 IsolationLevel 被 DB2Connection.ConnectionString 属性(或通过使用 db2dsdriver.cfg 文件)设置为 Chaos 隔离级别的等价级别,且连接到的服务器不是 DB2 Universal Database for iSeries,那么将抛出带有消息“不受支持的隔离级别 Chaos”的 ArgumentException,且将不会打开该连接。