java程式碼建立資料庫表
package com.soft.share.util;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import com.soft.share.common.Constants;
import com.soft.share.entity.User;
/**
* 建立資料庫的表
*/
public class CreateTable {
private static String getCreateTableSql(String tableName, String primaryKey, List<String> columns) {
String sql = "CREATE TABLE IF NOT EXISTS " + Constants.DB_PREFIX_NAME + tableName + "(%s, PRIMARY KEY (`"+primaryKey+"`))";
String column = StringUtil.join(columns, ",");
return String.format(sql, column);
}
public static void main(String[] args) {
Connection conn = null;
Statement st = null;
String driver = "com.mysql.jdbc.Driver";
String url = "jdbc:mysql://127.0.0.1:3306/share?characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull";
String user = "root";
String password = "root";
try {
Class.forName(driver);
conn = DriverManager.getConnection(url, user, password);
st = conn.createStatement();
List<String> columns = new ArrayList<String>();
columns.add( User._id + " int(11) NOT NULL AUTO_INCREMENT" );
columns.add( User._login_id + " varchar(50) NOT NULL" );
columns.add( User._password + " varchar(50) NOT NULL" );
columns.add( User._create_time + " datetime NOT NULL" );
columns.add( User._mobile + " varchar(20)" );
columns.add( User._name + " varchar(50)" );
columns.add( User._zone_id + " int(11) NOT NULL" );
columns.add( User._org_id + " int(11) NOT NULL" );
columns.add( User._enable + " int(11) NOT NULL" );
st.addBatch( getCreateTableSql("user", User._id, columns) );
columns.clear();
st.executeBatch();
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (st != null) st.close();
if (conn != null) conn.close();
} catch (Exception ex) {
}
}
}
}