class Mkxms::Mssql::TableType::KeyConstraint
Constants
- SQL_OBJECT_TYPE
Attributes
ignore_duplicates[RW]
type[RW]
Public Class Methods
new(attrs)
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 88 def initialize(attrs) @type = attrs['type'] @clustered = !!attrs['clustered'] @ignore_duplicates = !!attrs['ignore-duplicates'] end
Public Instance Methods
clustered=(val)
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 98 def clustered=(val); @clustered = !!val; end
clustered?()
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 97 def clustered?; @clustered; end
ignore_duplicates=(val)
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 101 def ignore_duplicates=(val); @ignore_duplicates = !!val; end
ignore_duplicates?()
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 100 def ignore_duplicates?; @ignore_duplicates; end
to_sql()
click to toggle source
# File lib/mkxms/mssql/table_type_handler.rb, line 103 def to_sql "#{type} #{clustered? ? "CLUSTERED" : "NONCLUSTERED"} (#{ columns.map(&:spec).join(', ') })".tap do |result| result << " WITH (IGNORE_DUP_KEY = ON)" if ignore_duplicates? end end