lib/knj/knjdb/drivers/mysql/knjdb_mysql_columns.rb in knjrbfw-0.0.25 vs lib/knj/knjdb/drivers/mysql/knjdb_mysql_columns.rb in knjrbfw-0.0.26
- old
+ new
@@ -1,11 +1,10 @@
class KnjDB_mysql::Columns
attr_reader :db
def initialize(args)
@args = args
- @db = @args[:db]
end
def data_sql(data)
raise "No type given." if !data["type"]
@@ -18,15 +17,15 @@
sql << " NOT NULL" if !data["null"]
if data.key?("default_func")
sql << " DEFAULT #{data["default_func"]}"
elsif data.key?("default") and data["default"] != false
- sql << " DEFAULT '#{@db.escape(data["default"])}'"
+ sql << " DEFAULT '#{@args[:db].escape(data["default"])}'"
end
- sql << " COMMENT '#{@db.escape(data["comment"])}'" if data.key?("comment")
- sql << " AFTER `#{@db.esc_col(data["after"])}`" if data["after"] and !data["first"]
+ sql << " COMMENT '#{@args[:db].escape(data["comment"])}'" if data.key?("comment")
+ sql << " AFTER `#{@args[:db].esc_col(data["after"])}`" if data["after"] and !data["first"]
sql << " FIRST" if data["first"]
return sql
end
end
@@ -46,11 +45,11 @@
def name
return @args[:data][:Field]
end
def table
- return @db.tables[@args[:table_name]]
+ return @args[:db].tables[@args[:table_name]]
end
def data
return {
"type" => self.type,
@@ -114,24 +113,24 @@
def comment
return @args[:data][:Comment]
end
def drop
- @db.query("ALTER TABLE `#{@args[:table_name]}` DROP COLUMN `#{self.name}`")
+ @args[:db].query("ALTER TABLE `#{@args[:table_name]}` DROP COLUMN `#{self.name}`")
end
def change(data)
- col_escaped = "#{@db.enc_col}#{@db.esc_col(self.name)}#{@db.enc_col}"
- table_escape = "#{@db.enc_table}#{@db.esc_table(self.table.name)}#{@db.enc_table}"
+ col_escaped = "#{@args[:db].enc_col}#{@args[:db].esc_col(self.name)}#{@args[:db].enc_col}"
+ table_escape = "#{@args[:db].enc_table}#{@args[:db].esc_table(self.table.name)}#{@args[:db].enc_table}"
newdata = data.clone
newdata["name"] = self.name if !newdata.key?("name")
newdata["type"] = self.type if !newdata.key?("type")
newdata["maxlength"] = self.maxlength if !newdata.key?("maxlength") and self.maxlength
newdata["null"] = self.null? if !newdata.key?("null")
newdata["default"] = self.default if !newdata.key?("default") and self.default
newdata.delete("primarykey") if newdata.key?("primarykey")
type_s = newdata["type"].to_s
- @db.query("ALTER TABLE #{table_escape} CHANGE #{col_escaped} #{@db.cols.data_sql(newdata)}")
+ @args[:db].query("ALTER TABLE #{table_escape} CHANGE #{col_escaped} #{@args[:db].cols.data_sql(newdata)}")
end
end
\ No newline at end of file