234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
|
# File 'lib/ibmeta.rb', line 234
def rename_table(conn, ntable_name)
new_table_name = ntable_name.to_s.upcase
if @loaded.nil? or !@loaded
load(conn)
end
old_table_name = @name
load(conn) @name = new_table_name
to_sql(:SQL_TABLE).each() {|sql| conn.execute_immediate(sql) }
conn.execute_immediate( "insert into #{new_table_name} select * from #{old_table_name}")
to_sql(:SQL_PRIMARY_KEYS).each() {|sql| conn.execute_immediate(sql) }
to_sql(:SQL_FOREIGN_KEYS).each() {|sql| conn.execute_immediate(sql) }
@indices.each() do |index|
index.remove_index(conn)
index.table = new_table_name
index.create_index(conn)
end
@name = old_table_name
drop_table(conn)
end
|