Class: Rubeus::Jdbc::Index

Inherits:
TableElement show all
Includes:
FullyQualifiedNamed
Defined in:
lib/rubeus/jdbc/index.rb

Defined Under Namespace

Classes: Key

Constant Summary collapse

RECORD_UNIQUE_ATTRS =
  1. TABLE_CAT String => テーブルカタログ (null の可能性がある)

  2. TABLE_SCHEM String => テーブルスキーマ (null の可能性がある)

  3. TABLE_NAME String => テーブル名

  4. NON_UNIQUE boolean => インデックス値は一意でない値にできるか。TYPE が tableIndexStatistic の場合は false

  5. INDEX_QUALIFIER String => インデックスカタログ (null の可能性がある)。TYPE が tableIndexStatistic の場合は null

  6. INDEX_NAME String => インデックス名。TYPE が tableIndexStatistic の場合は null

  7. TYPE short => インデックスの型

    * tableIndexStatistic - テーブルのインデックスの記述に連動して返されるテーブルの統計情報を識別する
    * tableIndexClustered - クラスタ化されたインデックス
    * tableIndexHashed - ハッシュ化されたインデックス
    * tableIndexOther - インデックスのその他のスタイル
    
  8. ORDINAL_POSITION short => インデックス中の列シーケンス。TYPE が tableIndexStatistic の場合は 0

  9. COLUMN_NAME String => 列名。TYPE が tableIndexStatistic の場合は null

  10. ASC_OR_DESC String => 列ソートシーケンス、「A」=> 昇順、「D」=> 降順、ソートシーケンスがサポートされていない場合は、null の可能性がある。TYPE が tableIndexStatistic の場合は null

  11. CARDINALITY int => TYPE が tableIndexStatistic の場合、テーブル中の列数。そうでない場合は、インデックス中の一意の値の数

  12. PAGES int => TYPE が tableIndexStatistic の場合、テーブルで使用されるページ数。そうでない場合は、現在のインデックスで使用されるページ数

  13. FILTER_CONDITION String => もしあれば、フィルタ条件 (null の可能性がある)

see also: java.sun.com/javase/ja/6/docs/ja/api/java/sql/DatabaseMetaData.html#getIndexInfo(java.lang.String,%20java.lang.String,%20java.lang.String,%20boolean,%20boolean)

[:table_cat, :table_schem, :table_name, :non_unique, :index_qualifier, :index_name]
ATTR_NAMES =
[:table_cat, :table_schem, :table_name, :non_unique, :index_qualifier, :index_name, :type,
# :orinal_position, :column_name, :asc_or_desc, :cardinality,
:pages, :filter_condition]

Constants included from FullyQualifiedNamed

FullyQualifiedNamed::FQN_ATTRS, FullyQualifiedNamed::FQN_ATTR_STRS

Instance Attribute Summary

Attributes inherited from TableElement

#table

Attributes inherited from MetaElement

#jdbc_info, #meta_data, #options

Instance Method Summary collapse

Methods included from FullyQualifiedNamed

#fully_qualified_name, #same_fqn?

Methods inherited from TableElement

#initialize, #pretty_print_instance_variables

Methods inherited from MetaElement

#initialize, #pretty_print_instance_variables

Constructor Details

This class inherits a constructor from Rubeus::Jdbc::TableElement

Instance Method Details

#inspectObject



34
35
36
37
# File 'lib/rubeus/jdbc/index.rb', line 34

def inspect
  "#<#{self.class.name} #{table.name}.#{name}(%s)>" % 
    keys.map{|k| k.name + (k.desc? ? " DESC" : '')}.join(',')
end

#keysObject



43
44
45
# File 'lib/rubeus/jdbc/index.rb', line 43

def keys
  @key ||= Rubeus::Util::NameAccessArray.new
end

#nameObject



39
40
41
# File 'lib/rubeus/jdbc/index.rb', line 39

def name
  index_name.send(options[:name_case] || :to_s)
end