📄 frmzycfdb.java
字号:
package myprojects.FrmZYCFDb;
import java.sql.*;
/**
* <p>该类用于数据库的连接和SQL语句的执行</p>
* @author 邓余林
* @version 1.0
* @inheritDoc FrmZYCF.java
* @see java.sql.Connection
* @see java.sql.ResultSet
* @see java.sql.Statement
*/
public class FrmZYCFDb{
//定义数据库连接字符串,jdbc.odbc桥
String sDBDriver = "sun.jdbc.odbc.JdbcOdbcDriver";
String sConnStr = "jdbc:odbc:Dbserver";
Connection conn = null;
Statement stmt = null;
String sSQL = null;
public ResultSet rs = null;
/**
* <p>连接数据库,一次性连接</p>
* @throws SQLException
* @return false,DB connection success
* true,DB connection failed
* @see FrmZYCF#createshell()
*/
public boolean getConnection(){
try{
//加载驱动器
Class.forName(sDBDriver);
//建立连接
conn = DriverManager.getConnection(sConnStr);
//关闭自动提交
conn.setAutoCommit(false);
//设定事务级别
conn.setTransactionIsolation(Connection.TRANSACTION_SERIALIZABLE);
//创建一个JDBC声明
stmt = conn.createStatement();
return false;
}catch(Exception e){
return true;
}
}
/**
* <p>关闭数据连接</p>
* @throws SQLException
* @see FrmZYCF#main(String[])
*/
public void closeDB(){
try{
//Connection success
if(conn!=null){
//在系统连接关闭之前,
//将所有未能及时提交的事务释放
conn.commit();
//解除事务操作
conn.setAutoCommit(true);
//关闭连接
if(!conn.isClosed())
conn.close();
}
}catch(SQLException se){}
}
/**
* <p>获取服务器端系统时间</p>
* @return 时间字符串,格式形如"yyyy-mm-dd HH-MM"
* 查询出错返回null值
* @see FrmZYCF#initWidgets()
*/
public String getSysDate(){
sSQL = "SELECT SUBSTRING(CONVERT(VARCHAR(16),GETDATE(),120),1,16) AS SYSDATE";
try{
rs = stmt.executeQuery(sSQL);
while ( rs.next() ){
return( rs.getString("SYSDATE") );
}
}catch(SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
}
return null;
}
/**
* <p>执行查询数据库的SQL语句</p>
* @param sql-要执行的SQL查询语句
* @return 查询成功返回true,失败返回false
* @see FrmZYCF
*/
public boolean executeQuery(String sql){
try{
rs=stmt.executeQuery(sql);
return true;
}catch(SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
}
return false;
}
/**
* <p>执行更新数据库操作的SQL语句</p>
* SQL语句为INSERT,DELETE,UPDATE等更新操作
* @param sql-传入的待执行的SQL语句
* @return int-操作成功时返回记录号,否则返回0表示操作不成功
*/
public int executeUpdate(String sql){
try{
int i = stmt.executeUpdate(sql);
conn.commit();
return i;
}catch(SQLException se){
System.out.println(se.getMessage());
se.printStackTrace();
try{
conn.rollback();
}catch(SQLException s){}
}
return 0;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -