You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
69 lines
2.5 KiB
69 lines
2.5 KiB
package de.memtext.db; |
|
|
|
import java.sql.Statement; |
|
|
|
/** |
|
* @author MB |
|
* |
|
* To change this generated comment edit the template variable "typecomment": |
|
* Window>Preferences>Java>Templates. |
|
* To enable and disable the creation of type comments go to |
|
* Window>Preferences>Java>Code Generation. |
|
*/ |
|
public class HsqlProcedures { |
|
|
|
/** |
|
* Constructor for HsqlProcedures. |
|
*/ |
|
private HsqlProcedures() { |
|
super(); |
|
} |
|
|
|
public static Integer get1() { |
|
return Integer.valueOf(1); |
|
|
|
} |
|
|
|
public static void alterTableColumnIntegerToVarchar(java.sql.Connection con, String tablename, String columnname) { |
|
try { |
|
Statement stmt = con.createStatement(); |
|
// add new tmp varchar col |
|
stmt.execute("alter table " + tablename + " add column tmp" + columnname + " varchar"); |
|
//update value of tmp |
|
stmt.execute("update " + tablename + " set tmp" + columnname + "= " + columnname); |
|
//drop original |
|
stmt.execute("alter table " + tablename + " drop column " + columnname); |
|
//add col with original name and of varchar type |
|
stmt.execute("alter table " + tablename + " add column " + columnname + " varchar"); |
|
//update values |
|
stmt.execute("update " + tablename + " set " + columnname + "= tmp" + columnname); |
|
//drop tmp |
|
stmt.execute("alter table " + tablename + " drop column tmp" + columnname); |
|
} catch (Exception e) { |
|
e.printStackTrace(); |
|
} |
|
|
|
} |
|
|
|
public static void alterTableColumnVarcharToInteger(java.sql.Connection con, String tablename, String columnname) { |
|
try { |
|
Statement stmt = con.createStatement(); |
|
// add new tmp varchar col |
|
stmt.execute("alter table " + tablename + " add column tmp" + columnname + " integer"); |
|
//update value of tmp |
|
stmt.execute("update " + tablename + " set tmp" + columnname + "= " + columnname); |
|
//drop original |
|
stmt.execute("alter table " + tablename + " drop column " + columnname); |
|
//add col with original name and of varchar type |
|
stmt.execute("alter table " + tablename + " add column " + columnname + " integer"); |
|
//update values |
|
stmt.execute("update " + tablename + " set " + columnname + "= tmp" + columnname); |
|
//drop tmp |
|
stmt.execute("alter table " + tablename + " drop column tmp" + columnname); |
|
} catch (Exception e) { |
|
e.printStackTrace(); |
|
} |
|
|
|
} |
|
|
|
}
|
|
|