DtoDatabase オブジェクト
プロパティ
DataPath | データベースのデータの場所を取得または設定します。 |
DbCodePage | データベースのコード ページを取得または設定します。このプロパティは列挙型です。値のリストについては、 データベース コード ページを参照してください。ゼロの値はサーバーのエンコード(データベース エンジンを起動しているサーバーのコード ページ)を指定します。 |
DbFlags | データベースのデータベース フラグを取得または設定します。このプロパティは列挙型です。値のリストについては、 データベース フラグを参照してください。 |
DdfPath | データベースの辞書のパスを取得または設定します。 |
Name | データベースの名前を設定または取得します。 |
Secured | データベースにセキュリティが設定されているかどうかを返します(0 = セキュリティ未設定、1 = セキュリティ設定済み) |
Session | この DtoDatabase オブジェクトに関連付けられている Session オブジェクトを取得または設定します。 |
コレクション
メソッド
備考
Secure メソッドおよび UnSecure メソッドは、データベースが閉じている場合にのみ使用可能です。
例
以下の例では、セッション オブジェクトのインスタンスを作成し、サーバーに接続する方法を示します。
Dim my_session as New DtoSession
Dim result as DtoResult
result = my_session.Connect("myserver", "username", "password")
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
関連項目
メソッドの詳細
AddUserToGroup
既存ユーザーをデータベースの既存グループに追加します。
構文
result = Object.AddUserToGroup(username, groupname)
引数
Object | Dtodatabase オブジェクト。 |
username | グループに追加するユーザー名。 |
groupname | ユーザーを追加するグループ名。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
この関数は、指定したグループまたはユーザーがデータベースにあらかじめ存在していない場合や、ユーザーが別のグループのメンバーである場合は失敗します。
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | Dtodatabase オブジェクト。 |
username | 既存のデータベース ユーザーの名前。 |
new_username | データベース ユーザーの新しい名前。ヌルを設定すると関数は失敗します。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | Dtodatabase オブジェクト。 |
username | パスワードを変更するデータベース ユーザーの名前。 |
new_password | ユーザーの新しいパスワード。ヌルを設定するとパスワードがクリアされます。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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
引数
戻り値
result | メソッド呼び出しの結果を示す 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)
引数
Object | DtoDatabase オブジェクト |
username | データベース用のデータベース ユーザー名です。データベースにセキュリティが設定されていない場合、空文字列を設定します。 |
password | データベース ユーザーのパスワードです。データベースにセキュリティが設定されていない場合、空文字列を設定します。 |
newDBname | コピーしたデータベース用のデータベース名です。 |
newDictionaryPath | 辞書ファイルを作成するディレクトリへの絶対パス。これは既存のディレクトリでなければなりません。 |
newDataPath | データベースのデータ パスです。デフォルトのデータ パス(つまり、辞書パスと同じパス)を使用するには、空文字列を渡します。 |
戻り値
result | メソッド呼び出しの結果を示す 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)
引数
Object | Dtodatabase オブジェクト。 |
groupname | データベースに追加するグループの名前。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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])
引数
Object | Dtodatabase オブジェクト。 |
username | データベースに追加するユーザーの名前。 |
password | ユーザー パスワード。ヌルを設定するとパスワードは設定されません。 |
groupname | ユーザーを割り当てるデータベース グループの名前。ヌルを設定するとユーザーはグループに割り当てられません。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | Dtodatabase オブジェクト。 |
groupname | データベースから削除するグループの名前。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | Dtodatabase オブジェクト。 |
username | データベースから削除するユーザーの名前。 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | DtoDatabase オブジェクト |
username | データベース用のユーザー名です。データベースにセキュリティが設定されていない場合、空の文字列を設定します。 |
password | データベース用のパスワードです。データベースにセキュリティが設定されていない場合、空の文字列を設定します。 |
戻り値
result | メソッド呼び出しの結果を示す 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)
引数
Object | Dtodatabase オブジェクト。 |
groupname | データベース グループ名 |
username | データベース ユーザー名 |
戻り値
result | メソッド呼び出しの結果を示す DtoResult(Long 型の値)。 |
備考
以下の前提条件を満たす必要があります。
•まずセッションを作成し、次に
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)
引数
Object | DtoDatabase オブジェクト |
user | データベースのセキュリティを有効にできる「Master」として設定するユーザー。 |
password | Master ユーザーのパスワード。 |
戻り値
result | メソッド呼び出しの結果を示す 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)
引数
Object | DtoDatabase オブジェクト |
user | データベースのセキュリティを無効にできる「Master」として設定するユーザー。 |
password | Master ユーザーのパスワード。 |
戻り値
result | メソッド呼び出しの結果を示す 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")