Top > OOoBasic > Base > Tables

テーブル Edit

データソースに接続した後テーブルコンテナから個々のテーブルの情報にアクセスできます。ここでのテーブルはテーブルの定義です。

oConnection = oDataSource.getConnection("", "")
 
oTables = oConnection.getTables()

新規テーブル Edit

新しいテーブルはテーブルコンテナから DataDescriptor を作成してそれを編集、追加します。テーブルのカラムはカラムコンテナから DataDescriptor を作成、編集、追加します。 テーブルをコンテナに追加するまでに設定できるカラムの属性はデータベースのテーブルのカラムの属性のみで、Base の UI での属性は設定できません。たとえば、カラムではデーターの長さなどは指定できますが、表示フォーマットは後で設定することになります。

' 新規テーブルの作成
 oTable = oTables.createDataDescriptor()
' テーブル名
 oTable.Name = sTableName

' カラムコンテナ
 oColumns = oTable.getColumns()

' カラムの編集
  oDataTypes = com.sun.star.sdbc.DataType
 
 ' 新しいカラム
 oDesc = oColumns.createDataDescriptor()
 oDesc.setPropertyValues( _
     Array("Name", "Type"), _
     Array("ID", oDataTypes.INTEGER))
 oDesc.IsNullable = 0
 oDesc.IsAutoIncrement = True
 'oDesc.FormatKey = 5001 ' UI 表示用のためここで設定しても効果なし
 'カラムを追加
 oColumns.appendByDescriptor(oDesc)

'.... 他のカラム設定

' テーブルをコンテナに追加する
oTables.appendByDescriptor(oTable)

' UI でのカラム設定
 oTable = oTables.getByName(sTableName)
 oColumns = oTable.getColumns()
 
 ' 日付の表示を year/month/date ? に変更
 oColumn = oColumns.getByName("DATE")
 oColumn.FormatKey = 5036

Reload   New Lower page making Edit Freeze Diff Upload Copy Rename   Front page List of pages Search Recent changes Backup   Help   RSS of recent changes