SymfowareConnectionクラスで拡張したAPIは、以下のメンバです。
接続するSymfoware Serverのホスト名を取得します。
public string Host {get;}Public ReadOnly Property Host As String
接続するSymfoware Serverのホスト名。
RDB2_TCP連携で使用するポート番号を取得します。
public int Port {get;}Public ReadOnly Property Port As Integer
RDB2_TCP連携で使用するポート番号。
データベース トランザクションを開始します。既存のオーバーロードに加え、以下のオーバーロードを使用することができます。
アクセスモードを指定して、データベース トランザクションを開始します。
アクセスモードと分離レベルを指定して、データベース トランザクションを開始します。記述形式、およびパラメタの詳細は、IsolationLevel、およびAccessModeを参照してください。
public SymfowareTransaction BeginTransaction(SymfowareAccessMode accmod);Public Function BeginTransaction (accmod As SymfowareAccessMode) As SymfowareTransactionトランザクションのAccessMode列挙体のパラメタを指定します。
読込み専用モード。
トランザクション内で参照系のSQL文のみ、実行することができます。
更新可能モード。
トランザクション内で参照系および更新系のSQL文を実行することができます。
新しいトランザクションを表すオブジェクト。
例外の種類 | 条件 |
|---|---|
ArgumentException | 無効な引数が指定されました。 |
InvalidOperationException | 並列トランザクションはサポートされていません。 |
一時表に格納したデータを削除し、一時表の領域を解放します。
public void ReleaseTable (String schemaName, String tableName);
Public Sub ReleaseTable (schemaName As String,tableName As String)
スキーマの名前。
解放する一時表の名前。
例外の種類 | 条件 |
|---|---|
ArgumentException | schemaName、またはtableNameに、NULLまたは空文字列が指定されました。 |
InvalidOperationException | SymfowareConnectionがクローズされました。 |
SymfowareException | サーバ側に存在しないスキーマ名、またはテーブル名が指定されました。 |
public void ReleaseTableWithName(string modifiedTable)
{
string connString = "data source=myhost;port=26551;" +
"initial catalog=company;user id=Symfo;password=Symfo;";
SymfowareConnection conn1 = new SymfowareConnection(connString);
try
{
conn1.Open();
conn1.ReleaseTable("SC1",modifiedTable);
conn1.Close();
}
catch (SymfowareException ex1)
{
// エラー処理ルーチンを記述
}catch (Exception ex2)
{
// エラー処理ルーチンを記述
}
finally
{
if ((conn1!= null) && (conn1.State == ConnectionState.Open))
{
conn1.Close();
}
}
}Public Sub ReleaseTableWithName(ByVal modifiedTable As String)
Dim connString As String = "data source=myhost;port=26551;" _
& "initial catalog=company;user id=symfo;password=symfo;"
Dim conn1 As New SymfowareConnection(connString)
Try
conn1.Open()
conn1.ReleaseTable("SC1", modifiedTable)
conn1.Close()
Catch ex1 As SymfowareException
'エラー処理ルーチンを記述
Catch ex2 As Exception
'エラー処理ルーチンを記述
Finally
If ((Not conn1 Is Nothing) And (conn1.State = ConnectionState.Open)) Then
conn1.Close()
End If
End Try
End Sub現行SQLセションに対してロールを有効にします。
public void SetRole (String roleName, Int32 roleType);
Public Sub SetRole (roleName As String,roleType As Integer)
ロール名。現行SQLセションに対して有効にするロールの名前を指定します。実行者はロールの権限受領者でなければなりません。ロール名に空白を含めた場合は、前後の空白を取り除いた値をロール名とします。
ロール種別。以下のいずれかの値を指定します。
現行SQLセションでデフォルトロールの設定を有効にします。
現行SQLセションで有効となっているロールを無効にします。
注意
roleTypeに1または2を指定した場合、roleNameの指定は無効となります。
例外の種類 | 条件 |
|---|---|
ArgumentException | roleNameにNULLまたは空文字列が指定されました。 |
InvalidOperationException | SymfowareConnectionがクローズされました。 |
SymfowareException | サーバ側に存在しないロール名が指定されました。 |
public void ChangeRolesWithName(string roleName,int roleType)
{
string connString = "data source=myhost;port=26551;" +
"initial catalog=company;user id=Symfo;password=Symfo;";
SymfowareConnection conn1 = new SymfowareConnection(connString);
try
{
conn1.Open();
conn1.SetRole(roleName,roleType);
conn1.Close();
}
catch (SymfowareException ex1)
{
// エラー処理ルーチンを記述
}
catch (Exception ex2)
{
// エラー処理ルーチンを記述
}
finally
{
if ((conn1!= null) && (conn1.State == ConnectionState.Open))
{
conn1.Close();
}
}
}Public Sub ChangeRolesWithName(ByVal roleName As String, ByVal roleType As Integer)
Dim connString As String = "data source=myhost;port=26551;" _
& "initial catalog=company;user id=symfo;password=symfo;"
Dim conn1 As New SymfowareConnection(connString)
Try
conn1.Open()
conn1.SetRole(roleName, roleType)
conn1.Close()
Catch exception1 As SymfowareException
'エラー処理ルーチンを記述
Catch exception2 As Exception
'エラー処理ルーチンを記述
Finally
If ((Not conn1 Is Nothing) And (conn1.State = ConnectionState.Open)) Then
conn1.Close()
End If
End Try
End Sub現行セションの利用者(認可識別子)のパスワードを変更します。
public void SetUserPassword (String password);
Public Sub SetUserPassword (password As String)変更後のパスワード。
変更後のパスワードを指定します。文字列定数、または文字列型の埋込み変数で指定してください。
変更後のパスワードは、現在使用しているパスワードに対し、3文字以上違うものでなければなりません。また、大文字と小文字は同じ文字として扱います。
パスワードに空白を含めた場合は、前後の空白を取り除いた値をパスワードとします。
パスワードの更新に失敗した場合、例外が返ります。
例外の種類 | 条件 |
|---|---|
ArgumentException | passwordにNULLまたは空文字列が指定されました。 |
InvalidOperationException | SymfowareConnectionがクローズされました。 |
SymfowareException | 指定したパスワードが、設定条件を満たしていません。 |
public void ChangeUserPassword(string password)
{
string connString = "data source=myhost;port=26551;" +
"initial catalog=company;user id=Symfo;password=Symfo;";
SymfowareConnection conn1 = new SymfowareConnection(connString);
try
{
conn1.Open();
conn1.SetUserPassword(password);
conn1.Close();
}
catch (SymfowareException ex1)
{
// エラー処理ルーチンを記述
}
catch (Exception ex2)
{
// エラー処理ルーチンを記述
}
finally
{
if ((conn1!= null) && (conn1.State == ConnectionState.Open))
{
conn1.Close();
}
}
}Public Sub ChangeUserPassword(ByVal password As String)
Dim connString As String = "data source=myhost;port=26551;" _
& "initial catalog=company;user id=symfo;password=symfo;"
Dim conn1 As New SymfowareConnection(connString)
Try
conn1.Open()
conn1.SetUserPassword(password)
conn1.Close()
Catch exception1 As SymfowareException
'エラー処理ルーチンを記述
Catch exception2 As Exception
'エラー処理ルーチンを記述
Finally
If ((Not conn1 Is Nothing) And (conn1.State = ConnectionState.Open)) Then
conn1.Close()
End If
End Try
End Sub