Class: ActiveRecord::ConnectionAdapters::SQLServerColumn
- Inherits:
-
Column
- Object
- Column
- ActiveRecord::ConnectionAdapters::SQLServerColumn
- Defined in:
- lib/active_record/connection_adapters/sqlserver_column.rb
Instance Method Summary collapse
- #case_sensitive? ⇒ Boolean
- #collation ⇒ Object
-
#initialize(name, default, cast_type, sql_type = nil, null = true, sqlserver_options = {}) ⇒ SQLServerColumn
constructor
A new instance of SQLServerColumn.
- #is_identity? ⇒ Boolean
- #is_integer? ⇒ Boolean
- #is_primary? ⇒ Boolean
- #is_real? ⇒ Boolean
- #is_utf8? ⇒ Boolean
- #sql_type_for_statement ⇒ Object
- #table_name ⇒ Object
Constructor Details
#initialize(name, default, cast_type, sql_type = nil, null = true, sqlserver_options = {}) ⇒ SQLServerColumn
Returns a new instance of SQLServerColumn.
5 6 7 8 9 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 5 def initialize(name, default, cast_type, sql_type = nil, null = true, = {}) super(name, default, cast_type, sql_type, null) @sqlserver_options = .symbolize_keys @default_function = @sqlserver_options[:default_function] end |
Instance Method Details
#case_sensitive? ⇒ Boolean
47 48 49 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 47 def case_sensitive? collation && !collation.match(/_CI/) end |
#collation ⇒ Object
43 44 45 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 43 def collation @sqlserver_options[:collation] end |
#is_identity? ⇒ Boolean
23 24 25 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 23 def is_identity? @sqlserver_options[:is_identity] end |
#is_integer? ⇒ Boolean
35 36 37 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 35 def is_integer? @sql_type =~ /int/i end |
#is_primary? ⇒ Boolean
27 28 29 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 27 def is_primary? @sqlserver_options[:is_primary] end |
#is_real? ⇒ Boolean
39 40 41 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 39 def is_real? @sql_type =~ /real/i end |
#is_utf8? ⇒ Boolean
31 32 33 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 31 def is_utf8? @sql_type =~ /nvarchar|ntext|nchar/i end |
#sql_type_for_statement ⇒ Object
11 12 13 14 15 16 17 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 11 def sql_type_for_statement if is_integer? || is_real? sql_type.sub(/\((\d+)?\)/, '') else sql_type end end |
#table_name ⇒ Object
19 20 21 |
# File 'lib/active_record/connection_adapters/sqlserver_column.rb', line 19 def table_name @sqlserver_options[:table_name] end |