DtoDatabase オブジェクト
プロパティ
 
データベースのコード ページを取得または設定します。このプロパティは列挙型です。値の一覧については、データベース コード ページを参照してください。ゼロの値はサーバーのエンコード(データベース エンジンを起動しているサーバーのコード ページ)を指定します。
コレクション
DtoTables コレクション
メソッド
AddUserToGroup メソッド
AlterUserName メソッド
AlterUserPassword メソッド
Close メソッド
Copy メソッド
CreateGroup メソッド
CreateUser メソッド
DropGroup メソッド
DropUser メソッド
Open メソッド
RemoveUserFromGroup メソッド
Secure メソッド
UnSecure メソッド
備考
Secure メソッドおよび UnSecure メソッドは、データベースが閉じている場合にのみ使用可能です。
以下の例では、セッション オブジェクトのインスタンスを作成し、サーバーに接続する方法を示します。
'セッション オブジェクトのインスタンスを作成し、サーバーに接続する
Dim my_session as New DtoSession
Dim result as DtoResult
result = my_session.Connect("myserver", "username", "password")
 
'セッション オブジェクトを使用して Databases コレクションを取得する
Dim my_databases as DtoDatabases
Set my_databases = my_session.Databases
 
'最初のデータベースを取得し、その辞書のパスを照会する
Dim first_database as DtoDatabase
Dim dictionarypath as string
Set first_database = my_databases(1)
dictionarypath = first_database.DdfPath
 
以下の例では、"Demodata" サンプル データベースで DBCodePage プロパティを使用したコード ページの取得および設定方法を示します。
Dim m_dtoSession1 As New DtoSession
Dim result As dtoResult
result = m_dtoSession1.Connect("localhost", "", "")
Dim sCodePage As String
sCodePage = m_dtoSession1.Databases("DEMODATA").DBCodePage
MsgBox "Code Page for database (before change): " & CStr(sCodePage)
If result = Dto_Success Then
   Rem Set the code page for the database by passing in
   Rem the code page number (for example, 0, 932, 1252,
   Rem and so forth).
   m_dtoSession1.Databases("DEMODATA").DBCodePage = 0
End If
MsgBox "Code Page for database: " & CStr(m_dtoSession1.Databases("DEMODATA").DBCodePage)
m_dtoSession1.Disconnect
関連項目
DtoDatabases コレクション
メソッドの詳細
AddUserToGroup メソッド
既存ユーザーをデータベースの既存グループに追加します。
構文
result = Object.AddUserToGroup(username, groupname)
引数
戻り値
備考
この関数は、指定したグループまたはユーザーがデータベースにあらかじめ存在していない場合や、ユーザーが別のグループのメンバーである場合は失敗します。
以下の前提条件を満たす必要があります。
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function AddUserToGroup(sUserName As String, sGroupName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、グループにユーザーを追加しましょう
    res = m_dbn.AddUserToGroup(sUserName, sGroupName)
    If res <> Dto_Success Then
        LogResult("グループへのユーザーの追加でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザー " & sUserName & " がグループ " & sGroupName & " に追加されました。")
    End If
End If
m_dbn.Close
End Function
AlterUserName メソッド
指定されたデータベースの既存のユーザーの名前を変更します。
構文
result = Object.AlterUserName(username, new_username)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function AlterUserName(sUserName As String, sNewUserName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、ユーザー名を変更しましょう
    res = m_dbn.AlterUserName(sUserName, sNewUserName)
    If res <> Dto_Success Then
        LogResult("ユーザー名の変更でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザー名は正常に変更されました。新しいユーザー名:" & sNewUserName)
    End If
End If
m_dbn.Close
End Function
AlterUserPassword メソッド
既存のユーザーのパスワードを変更します。
構文
result = Object.AlterUserPassword(username, new_password)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function AlterUserPassword(sUser As String, sNewPassword As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、ユーザーのパスワードを変更しましょう
    res = m_dbn.AlterUserPassword(sUser, sNewPassword)
    If res <> Dto_Success Then
        LogResult("ユーザーのパスワードの変更でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザーのパスワードは正常に変更されました。")
    End If
End If
m_dbn.Close
End Function
Close メソッド
Open メソッドを使用して開いたデータ辞書ファイルのセットを閉じます。
構文
result = Object.Close
引数
戻り値
 
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。DtoSession オブジェクトの Error プロパティを使って結果の説明を取得します。
備考
Open メソッドを使ってデータベースを開い後にこのメソッドを呼び出します。 エラー情報は Error プロパティを使って取得することができます。
Dim m_database as new DtoDatabase
Dim result as DtoResult
 
result = m_database.Open("dbuser","pwd")
 
'ここで操作を実行
'
result = m_database.Close
Copy メソッド
現在のデータベースを基にして新しいデータベースを作成します。
構文
result = Object.Copy(username, password, newDBname, newDictionaryPath, newDataPath)
引数
戻り値
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。DtoSession オブジェクトの Error プロパティを使って結果の説明を取得します。
備考
コピーされたデータベースにおいて参照整合性は保持されます。
このメソッドで返されるエラーの詳細については、Error プロパティを使って取得することができます。
Dim Database As New DtoDatabase
Dim result as DtoResult
Database.Session = my_session 'セッションが存在すると仮定
Database.Name = "DEMODATA"
'セキュリティが設定されていないデータベースではユーザー名とパスワードは不要
result = Database.Copy("", "", "DEMODATA2", "D:\DEMODATA2", "D:\DEMODATA2")
 
If NOT result = Dto_Success Then
  MsgBox "Error"+ Session.Error(result)
End If
CreateGroup メソッド
既存のデータベースに新しいユーザー グループを作成します。
構文
result = Object.CreateGroup(groupname)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function CreateGroup(sGroupName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、グループを作成しましょう
    res = m_dbn.CreateGroup(sGroupName)
    If res <> Dto_Success Then
        LogResult("グループの作成でエラーが発生しました:" & CStr(res))
    Else
        LogResult("グループ " & sGroupName & " が作成されました。")
    End If
End If
m_dbn.Close
End Function
CreateUser メソッド
既存のデータベースに新しいユーザーを作成します。任意で、パスワードを設定することと、新しいユーザーを既存のグループに割り当てることができます。
構文
result = Object.CreateUser(username[, password][, groupname])
引数
戻り値
備考
以下の前提条件を満たす必要があります。
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function CreateUser(sUserName As String, sPassword As String, sGroupName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、グループを作成しましょう
    res = m_dbn.CreateUser(sUserName, sPassword, sGroupName)
    If res <> Dto_Success Then
        LogResult("ユーザーの作成でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザー " & sUserName & " がグループ " & sGroupName & " に作成されました。")
    End If
End If
m_dbn.Close
End Function
DropGroup メソッド
データベースから既存のグループを削除します。
構文
result = Object.DropGroup(groupname)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function DropGroup(sGroupName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、グループを削除しましょう
    res = m_dbn.DropGroup(sGroupName)
    If res <> Dto_Success Then
        LogResult("グループの削除でエラーが発生しました:" & CStr(res))
    Else
        LogResult("グループ " & sGroupName & " が削除されました。")
    End If
End If
m_dbn.Close
End Function
DropUser メソッド
データベースから既存のユーザーを削除します。
構文
result = Object.DropUser(username)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function DropUser(sUserName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、ユーザーを削除しましょう
    res = m_dbn.DropUser(sUserName)
    If res <> Dto_Success Then
        LogResult("ユーザーの削除でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザー " & sUserName & " の削除は完了しました。")
    End If
End If
m_dbn.Close
End Function
Open メソッド
指定したユーザー名とパスワードでデータベースへの接続を開きます。
構文
result = Object.Open(username, password)
引数
戻り値
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。DtoSession オブジェクトの Error プロパティを使って結果の説明を取得します。
備考
この操作は、辞書ファイルのセットを開く手段として使用されます。 このセットには、FILE.DDF、INDEX.DDF および FIELD.DDF が含まれます。 また、多くのオプション DDF ファイルも含まれています。 メモリを解放するために Close メソッドを呼び出すことを忘れないでください。 データベースを一度開くと、Close メソッドが呼び出されるまでほかの誰もその辞書セットに変更を行うことができません。
データベースが開いている間は、Secure または UnSecure メソッドを実行できません。
このメソッドで返されるエラーの詳細については、DtoSession オブジェクトError プロパティを使って取得することができます。
Dim m_session as new DtoSession
Dim m_database as new DtoDatabase
Dim result as DtoResult
result = m_session.Connect("myserver","user","pwd")
m_database.Session = m_session
m_database.Name = "DEMODATA"
result = m_database.Open("dbuser","pwd")
RemoveUserFromGroup メソッド
既存のグループから既存のユーザーを削除します。
構文
result = Object.RemoveUserFromGroup(groupnamem, username)
引数
戻り値
備考
まずセッションを作成し、次に Open メソッドを使って、"Master" ユーザーとしてデータベースを正常に開いておく。
次の事後条件を満たす必要があります。
Close メソッドを使ってデータベースを閉じ、リソースを解放する。
Function RemoveUserFromGroup(sUserName As String, sGroupName As String) As Boolean
Dim res As dtoResult
Dim m_dbn As New DtoDatabase
Dim m_dbn.Session = m_dto
Dim m_dbn.Name = "demodata"
res = m_dbn.Open("Master", "1234")
If res = Dto_Success Then
    '正常に開いたら、グループからユーザーを削除しましょう
    res = m_dbn.RemoveUserFromGroup(sGroupName, sUserName)
    If res <> Dto_Success Then
        LogResult("グループからのユーザーの削除でエラーが発生しました:" & CStr(res))
    Else
        LogResult("ユーザー " & sUserName & " をグループ " & sGroupName & " から削除しました。")
    End If
End If
m_dbn.Close
End Function
Secure メソッド
データベースのセキュリティを有効にします。
構文
result = Object.Secure(user, password)
引数
戻り値
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。DtoSession オブジェクトの Error プロパティを使って結果の説明を取得します。
備考
データベースのセキュリティを有効にする際、データベース ユーザー名として Master を指定し、パスワードを選択する。データベースのセキュリティは、そのデータベースに定義されているアクセス権に基づいて施行されます。このセキュリティは SQL または ODBC アクセス方法で見られる動作と一致します。
セキュリティを設定する場合は、データベースが閉じていることを確認してください。
このメソッドで返されるエラーの詳細については、DtoSession オブジェクトError プロパティを使って取得することができます。
Dim m_database as new DtoDatabase
Dim result as DtoResult
m_database.Name = "DEMODATA"
m_database.Session = my_session 'セッションが存在すると仮定
result = m_database.Secure("Master", "password")
UnSecure メソッド
データベースのセキュリティを無効にします。
構文
result = Object.UnSecure(user, password)
引数
戻り値
メソッド呼び出しの結果を示す DtoResult(Long 型の値)。DtoSession オブジェクトの Error プロパティを使って結果の説明を取得します。
備考
データベースのセキュリティを無効にする際、データベース ユーザーとして Master を指定し、Master ユーザー パスワードを提供する必要があります。
セキュリティを無効にする場合は、データベースが閉じていることを確認してください。
このメソッドで返されるエラーの詳細については、DtoSession オブジェクトError プロパティを使って取得することができます。
Dim m_database as new DtoDatabase
Dim result as DtoResult
m_database.Name = "DEMODATA"
m_database.Session = my_session 'セッションが存在すると仮定
result = m_database.UnSecure("Master", "password")