Class Sequel::ADO::Access::AdoSchema::Column
In: lib/sequel/adapters/ado/access.rb
Parent: Object

Methods

[]   allow_null   db_type   default   maximum_length   new   precision   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"

Public Class methods

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 48
48:           def initialize(row)
49:             @row = row
50:           end

Public Instance methods

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 52
52:           def [](col)
53:             @row[col]
54:           end

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 56
56:           def allow_null
57:             self["IS_NULLABLE"]
58:           end

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 64
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

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 60
60:           def default
61:             self["COLUMN_DEFAULT"]
62:           end

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 83
83:           def maximum_length
84:             self["CHARACTER_MAXIMUM_LENGTH"]
85:           end

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 75
75:           def precision
76:             self["NUMERIC_PRECISION"]
77:           end

[Source]

    # File lib/sequel/adapters/ado/access.rb, line 79
79:           def scale
80:             self["NUMERIC_SCALE"]
81:           end

[Validate]