https://blog.csdn.net/qq_18769269/article/details/82775937
人大金倉作爲一款國產數據庫,使用的人數和相關資料都比較少。
最近使用人大金倉數據庫,做了個簡單的SQL和java jdbc的測試,希望能夠供大家參考。
1、SQL語句
創建表:
CREATE TABLE “PUBLIC”.“TB_SYS_CONFIGURE”(
“ATTR_KEY” VARCHAR (100) NOT NULL ,
“ATTR_VALUE” VARCHAR (100) NOT NULL
);
添加數據:
INSERT INTO TB_SYS_CONFIGURE
(ATTR_KEY, ATTR_VALUE)
VALUES (‘accessCount’, ‘3244’),
(‘accessCountOne’, ‘3456’),
(‘accessCountTwo’, ‘7890’);
下面的截圖跟數據對不上,因爲最開始忘了截圖了,截的是我crud測試後的,出入不大,供頁面參考。
2、JDBC
然後,有了數據以後,測試一下他的JDBC。
引入jar包
建立連接類
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.SQLException;
public class Getcon {
public static final String url = “jdbc:kingbase://192.168.0.211:54322/TEST”; //改爲自己數據庫地址和名字
public static final String name = “com.kingbase.Driver”;
public static final String user = “SYSTEM”;
public static final String password = “krms”; //這裏的用戶名和密碼設置爲自己的
public Connection conn = null;
public PreparedStatement pst = null;
public Getcon(String sql) {
try {
//Class.forName(name);//指南中的這個方法運行不成功
DriverManager.registerDriver(new com.kingbase.Driver());
conn = DriverManager.getConnection(url, user, password);//獲取連接
pst = conn.prepareStatement(sql);//準備執行語句
System.out.print("yes");
} catch (Exception e) {
e.printStackTrace();
}
}
public void close() {
try {
this.conn.close();
this.pst.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
操作類-JDBC增刪改查
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
public class KingBaseTest {
static String sql = null;
static Getcon db1 = null;
static ResultSet ret = null;
public static void main(String[] args) {
query();
//update();
//add();
//delete();
}
public static void query(){
sql = "select * from TB_SYS_CONFIGURE;";//要執行的SQL語句,改成自己的表什麼的
db1 = new Getcon(sql);//創建數據庫對象
try {
ret = db1.pst.executeQuery();//執行語句,ret是結果
while (ret.next()) {
System.out.println(ret.getString(1)+": "+ret.getString(2) );
}//顯示數據
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void update(){
sql = "\n" +
"UPDATE TB_SYS_CONFIGURE \n" +
"SET ATTR_KEY='accessCountTest' \n" +
"WHERE ATTR_VALUE='3456';\n";//要執行的SQL語句,改成自己的表什麼的
db1 = new Getcon(sql);//創建數據庫對象
try {
int i = db1.pst.executeUpdate();
if (i>0){
System.out.println("修改成功");
}
else {
System.out.println("修改失敗");
}
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void add(){
sql = "insert into TB_SYS_CONFIGURE (ATTR_KEY,ATTR_VALUE) values(?,?);\n";//要執行的SQL語句,改成自己的表什麼的
db1 = new Getcon(sql);//創建數據庫對象
PreparedStatement preparedStatement = null;
try {
preparedStatement = db1.conn.prepareStatement(sql);
preparedStatement.setString(1,"accessADD");
preparedStatement.setString(2,"12345");
int i1 = preparedStatement.executeUpdate();
if (i1>0){
System.out.println("修改成功");
}
else {
System.out.println("修改失敗");
}
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
public static void delete(){
sql = " delete from TB_SYS_CONFIGURE where ATTR_VALUE=7890 ";
db1 = new Getcon(sql);//創建數據庫對象
try {
int i1 = db1.pst.executeUpdate();
if (i1>0){
System.out.println(i1+"個刪除成功");
}
else {
System.out.println("刪除失敗");
}
ret.close();
db1.close();//關閉連接
} catch (SQLException e) {
e.printStackTrace();
}
}
}