class Mkxms::Mssql::Table
Constants
- SQL_OBJECT_TYPE
Attributes
columns[R]
heap_storage[RW]
lob_storage[RW]
name[RW]
owner[RW]
schema[RW]
Public Class Methods
new(schema, name)
click to toggle source
# File lib/mkxms/mssql/table_handler.rb, line 12 def initialize(schema, name) @schema = schema @name = name @columns = [] end
Public Instance Methods
to_sql()
click to toggle source
# File lib/mkxms/mssql/table_handler.rb, line 21 def to_sql lines = ["CREATE TABLE #{schema}.#{name} ("] lines << columns.map{|c| " " + c.to_sql}.join(",\n") lines << ")" lines << "ON #{heap_storage}" if heap_storage lines << "TEXTIMAGE_ON #{lob_storage}" if lob_storage lines << ";" lines << "" if owner lines << ["ALTER AUTHORIZATION ON OBJECT::#{schema}.#{name} TO #{owner};"] lines << "" end lines.concat extended_properties_sql columns.each do |col| lines.concat subitem_extended_properties_sql(col) end return lines.join("\n") end