class Sequel::ADO::Access::AdoSchema::Column

  1. lib/sequel/adapters/ado/access.rb
Superclass: Object

Methods

Public Class

  1. new

Public Instance

  1. []
  2. allow_null
  3. db_type
  4. default
  5. maximum_length
  6. precision
  7. scale

Constants

DATA_TYPE = { 2 => "SMALLINT", 3 => "INTEGER", 4 => "REAL", 5 => "DOUBLE", 6 => "MONEY", 7 => "DATETIME", 11 => "BIT", 14 => "DECIMAL", 16 => "TINYINT", 17 => "BYTE", 72 => "GUID", 128 => "BINARY", 130 => "TEXT", 131 => "DECIMAL", 201 => "TEXT", 205 => "IMAGE" }.freeze  

Public Class methods

new(row)
[show source]
   # File lib/sequel/adapters/ado/access.rb
48 def initialize(row)
49   @row = row
50 end

Public Instance methods

[](col)
[show source]
   # File lib/sequel/adapters/ado/access.rb
52 def [](col)
53   @row[col]
54 end
allow_null()
[show source]
   # File lib/sequel/adapters/ado/access.rb
56 def allow_null
57   self["IS_NULLABLE"]
58 end
db_type()
[show source]
   # File lib/sequel/adapters/ado/access.rb
64 def db_type
65   t = DATA_TYPE[self["DATA_TYPE"]]
66   if t == "DECIMAL" && precision
67     t + "(#{precision.to_i},#{(scale || 0).to_i})"
68   elsif t == "TEXT" && maximum_length && maximum_length > 0
69     t + "(#{maximum_length.to_i})"
70   else
71     t
72   end
73 end
default()
[show source]
   # File lib/sequel/adapters/ado/access.rb
60 def default
61   self["COLUMN_DEFAULT"]
62 end
maximum_length()
[show source]
   # File lib/sequel/adapters/ado/access.rb
83 def maximum_length
84   self["CHARACTER_MAXIMUM_LENGTH"]
85 end
precision()
[show source]
   # File lib/sequel/adapters/ado/access.rb
75 def precision
76   self["NUMERIC_PRECISION"]
77 end
scale()
[show source]
   # File lib/sequel/adapters/ado/access.rb
79 def scale
80   self["NUMERIC_SCALE"]
81 end