您的位置:首页 > 数据库 > MySQL

mysql和orcale数据库连接与SQL操作

2013-07-31 22:42 423 查看
/**
* 创建数据库的连接
*
* @param ip
* @param port
* @param db
* @param user
* @param password
*/
public boolean linkDB(String ip, String port, String db, String user,
String password) {
boolean flag = false;
try {

String url = String
.format("jdbc:mysql://%s:%s/%s?useUnicode=true&characterEncoding=utf8",
ip, port, db);
// System.out.println(url);
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
try {
// 建立数据库连接
conn = DriverManager.getConnection(url, user, password);
flag = true;
} catch (Exception e) {
System.out.println("Connect failed: " + e.getMessage());
}
} catch (Exception e) {
System.out.println("Wrong driver: " + e.getMessage());
}
return flag;
}


/**
* 创建数据库的连接
*
* @param ip
* @param port
* @param db
* @param user
* @param password
*/
public void linkDB(String ip, String port, String db, String user,
String password) {
try {

String url = String
.format("jdbc:oracle:thin:@%s:%s:%s",
ip, port, db);
// System.out.println(url);
// 加载数据库驱动
Class.forName("oracle.jdbc.driver.OracleDriver");
try {
// 建立数据库连接
conn = DriverManager.getConnection(url, user, password);
//				System.out.println("db connect succeed");
} catch (Exception e) {
System.out.println("Connect failed: " + e.getMessage());
}
} catch (Exception e) {
System.out.println("Wrong driver: " + e.getMessage());
}
}


/**
* 执行sql查询,获得记录数
*
* @param sql
* @return int count
*/
public int getQueryCount(String sql) {
int count = 0;
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
// 获取结果集的所有元素
while (rs.next()) {
count = rs.getRow(); // rs.getRow()获取resultset得到的记录数
}
} catch (SQLException e) {
e.printStackTrace();
}
return count;
}


/**
* 执行sql查询(select field from table where ...),获得require字段对应的value
* 如果查询结果得到的结果只有一条记录,则执行该方法,否则使用getQueryValueList(String sql, String
* field)方法
*
* @param sql
*            (select field from table where ...)
* @return String value
*/
public String getQueryValue(String sql, String requireField) {
String value = "";
try {
pstmt = conn.prepareStatement(sql);
rs = pstmt.executeQuery();
// 获取结果集的所有元素
while (rs.next()) {
value = rs.getString(requireField);
}
} catch (SQLException e) {
e.printStackTrace();
}
return value;
}


/**
* 执行数据库插入,更新和删除语句
*
* @param sql
*            数据库更新,插入和删除语句
* @param millisecond
*            执行每条sql的时间间隔(毫秒)
*/
public void doChange(String sql, int millisecond) {
try {
conn.setAutoCommit(false);
pstmt = conn.prepareStatement(sql, Statement.RETURN_GENERATED_KEYS);
pstmt.execute();
conn.commit();
} catch (SQLException e) {
System.out.println("sql执行失败:" + e.getMessage());
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: