最近一项目需要用到KingbaseES(金仓数据库),于是花了半天时间安装学习了下.下面谈谈安装使用情况及一些注意事项.
一开始说道要用金仓数据库我是"拒绝的", 哈哈哈哈,我在想这是什么呢?怎么没听过呢,但是没有办法项目必需要用这个数据库,所以必需去现在研究.
金仓数据库下载链接:
http://www.kingbase.com.cn/kingbase/newslist/list-186-1.html
下载时请注意选择和操作系统对应的版本.
安装说明链接:
http://www.kingbase.com.cn/kingbase/newslist/list-187-1.html
安装完成后, 先想办法用客户端看看数据库里的结构到底是怎么样子的
金仓数据库安装完成后是自带客户端管理界面的. 打开后寻找创建表按钮这些,但是找了下没有,只能写sql语句,于是用sql语句写了个简单的创建表的语句,然后执行后看表是创建在什么地方的, 发现默认的创建在数据库->模式->PUBLIC下的. 这一步就知道了表是创建在什么地方的. 然后选择表右键看有些什么能操作的.发现不能可视化操作字段这些,只能用sql执行.
接下来试了下表的增删该查语句,这里发现和标准sql有些细小的变化,这里SQL严格区分大小写.而且字段,表名必需用"(双引号引起来),注意必需是双引号哦,单引号或者不引的话会执行不成功哦.
demo:
--字段,表名严格区分大小写,写sql时请注意,所有表名前加"PUBLIC",这个是数据库下的一个模式,相当于一个文件夹,我们所有的表都放在这个文件夹下的
--查询语句(字段可以根据自己的实际业务需求增加或者减少,不必要全部查询出来), 查询单个对象到时返回是Object[]数组,到时用下标取值拼装成自己需要的对象
--针对取别名的语法
SELECT t."id" as ids,"bz","cjr","cjsj","scbj","xgr","xgsj","dlyhm","dymm","lxdh","yhjs","zsxm","zw"
FROM "PUBLIC"."yhb" as t WHERE "dlyhm" like '%z%';
--针对使用case when的语法
SELECT t."id" as ids,"bz","cjr","cjsj",CASE "scbj" WHEN 1 THEN '锁定' ELSE '正常' END as te,"xgr","xgsj","dlyhm","dymm","lxdh","yhjs","zsxm","zw"
FROM "PUBLIC"."yhb" as t WHERE "id"=5;
--日期格式化 语法
--%M 月名字(January……December)
--%W 星期名字(Sunday……Saturday)
--%D 有英语前缀的月份的日期(1st, 2nd, 3rd, 等等。)
--%Y 年, 数字, 4 位
--%y 年, 数字, 2 位
--%a 缩写的星期名字(Sun……Sat)
--%d 月份中的天数, 数字(00……31)
--%e 月份中的天数, 数字(0……31)
--%m 月, 数字(01……12)
--%c 月, 数字(1……12)
--%b 缩写的月份名字(Jan……Dec)
--%j 一年中的天数(001……366)
--%H 小时(00……23)
--%k 小时(0……23)
--%h 小时(01……12)
--%I 小时(01……12)
--%l 小时(1……12)
--%i 分钟, 数字(00……59)
--%r 时间,12 小时(hh:mm:ss AM/PM)
--%T 时间,24 小时(hh:mm:ss)
--%S 秒(00……59)
--%s 秒(00……59)
--%p AM 或 PM
--%% 一个文字“%”。
select DATE_FORMAT("xgsj", '%Y-%m-%d %T') from "PUBLIC"."cjpzglb"
--保存语句(字段可以根据自己的实际业务需求增加或者减少,不必要全部插入),传值时varchar类型的需要'单引号
INSERT INTO "PUBLIC"."yhb"
("id","scbj","dlyhm")
VALUES
(1,0,'zhangan1');
--修改语句(字段可以根据自己的实际业务需求增加或者减少,不必要全部修改), 删除语句和修改一样,只是把scbj状态改一下
UPDATE "PUBLIC"."yhb"
SET "scbj"='1',"dlyhm"='lisi'
WHERE "id"=5;
控制台操作完成后, 现在就考虑用java程序来连接操作这个数据库, 先用jdbc试了试, 成功, 该数据库驱动jar包在安装目录的lib包下, 该数据库可集成到hibernate中,但是占时没实现用hql语句操作, 只能执行sql.
以上就是初次使用KingbaseES数据库的使用心得, 有不对的地方望大家指教. 共同学习.