| Class | ActiveRecord::ConnectionAdapters::SybaseAdapter::ColumnWithIdentity |
| In: |
vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb
|
| Parent: | Column |
| identity | [R] | |
| primary | [R] |
# File vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb, line 115
115: def self.binary_to_string(value)
116: # FIXME: sybase-ctlib uses separate sql method for binary columns.
117: value
118: end
# File vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb, line 82
82: def initialize(name, default, sql_type = nil, nullable = nil, identity = nil, primary = nil)
83: super(name, default, sql_type, nullable)
84: @default, @identity, @primary = type_cast(default), identity, primary
85: end
# File vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb, line 111
111: def self.string_to_binary(value)
112: "0x#{value.unpack("H*")[0]}"
113: end
# File vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb, line 101
101: def self.string_to_time(string)
102: return string unless string.is_a?(String)
103:
104: # Since Sybase doesn't handle DATE or TIME, handle it here.
105: # Populate nil year/month/day with string_to_dummy_time() values.
106: time_array = ParseDate.parsedate(string)[0..5]
107: time_array[0] ||= 2000; time_array[1] ||= 1; time_array[2] ||= 1;
108: Time.send(Base.default_timezone, *time_array) rescue nil
109: end
# File vendor/rails/activerecord/lib/active_record/connection_adapters/sybase_adapter.rb, line 87
87: def simplified_type(field_type)
88: case field_type
89: when /int|bigint|smallint|tinyint/i then :integer
90: when /float|double|real/i then :float
91: when /decimal|money|numeric|smallmoney/i then :decimal
92: when /text|ntext/i then :text
93: when /binary|image|varbinary/i then :binary
94: when /char|nchar|nvarchar|string|varchar/i then :string
95: when /bit/i then :boolean
96: when /datetime|smalldatetime/i then :datetime
97: else super
98: end
99: end