Derby用户名密码后续

Joy 分类:好好学习 | Joy 标签: Joy 发表于2010/04/28,20:46 | 14条评论

前几天我写了一篇:为Derby设置用户名和密码,但是没有考虑周全。现在我再整理一下,发布完整教程。 继续阅读 »

为Derby设置用户名和密码

Joy 分类:好好学习 | Joy 标签: Joy 发表于2010/04/23,15:30 | 没有评论

Derby的embeded数据库默认是不需要用户名和密码即可访问。如果想要设置密码,需要自己写一个名为:.properties的文件,将该文件放在数据库所在的目录。注意:该文件derby是不会自动帮你创建的!

比如我的数据库 ’TEST‘ 位于:C:\Program Files\SQuirreL SQL Client, 那么derby.properties也要放在:C:\Program Files\SQuirreL SQL Client 这里。

然后用记事本打开derby.properties,手动填写内容:

derby.connection.requireAuthentication=true
derby.authentication.provider=BUILTIN
derby.user.username=password

将username和password改成你的就好了。

如果允许多个用户操作数据库,相应的加derby.user.username=password就可以。

Derby中Long varchar不能order by,所以……

Joy 分类:好好学习 | Joy 标签: Joy 发表于2010/04/15,13:29 | 2条评论

将long varchar转成varchar就可以了。

具体sql语句是:

select * from 表名 order by cast(字段名 as varchar(长度));

但是据说数据量大了会影响效率。

解决Derby默认大小写敏感的问题

Joy 分类:好好学习 | Joy 标签: Joy 发表于2010/03/17,15:26 | 3条评论

Derby的column值默认是大小写敏感的,查询的时候必须注意这个问题。

但是在客户端传过来的数据可能是千奇百怪的,如果数据库里存的是”Name”,传过来的是“name”就会查不到,但是不能要求客户端那么严格,一般来说,Name和name是一样的。

昨天,我研究了一下,找到一种非常麻烦的解决方法,那就是在创建表的时候加一个column,此column的值引用自某一个column,并且自动转为全大写或全小写,sql 语句如下:

CREATE TABLE employee
  1. (
  2. employeeID               int,
  3. name                        varchar( 50 ),
  4. caseInsensitiveName   GENERATED ALWAYS AS( UPPER( name ) )
  5. )
  6. ;

然后,在POJO类要增加一个attribute来对应这个column,当然了,在映射文件同样要加相应的property。

在然后,在需要查询employee的name时,将客户端传入的值先转为大写,注意,这时就不能去查询name这个column了,要查询caseInsensitiveName 。

瞧瞧,是不是很复杂啊。所以,我不推荐用这个方法。

今天我找到一种更简单的方法,废话少说,开始。

其实,在Derby中,支持这样的写法:

select * from employee where upper(name) =’WANG LIHONG’;

所以,我们不需要增加column,也不需要去改POJO和映射文件,只需要在查询时先把客户端传来的值变成大写,再用以下语句查询就好。

如果用HQL(最好用占位符,不要像我这样写,我这里举例就随便一点了):
” from Employee where upper(name)=”+”‘”+upperCname+”‘”;
如果用Criteria,需要用sqlRestriction()方法:
.add(Restrictions.sqlRestriction(“upper(cname)=?”,upperCname,Hibernate.STRING));

真正的Derby新手教程,Derby安装,创建数据库,在Java程序中使用Derby

Joy 分类:好好学习 | Joy 标签: Joy 发表于2010/03/02,15:47 | 4条评论

以下乃本人今天之研究成果,供广大菜鸟借鉴参考,如有高人路过发现错误,请不吝赐教。

1,下载并安装Derby:

下载地址:http://db.apache.org/ /_downloads.html,下载最新版本。

我用的是10.5.3.0。

解压缩到任意文件夹,我的是:E:\\Joy\derby

2,配置环境变量:

建立DERBY_HOME,值:E:\Java\Joy\derby\db- derby-10.5.3.0-bin\db-derby-10.5.3.0-bin

在Path加入:%DERBY_HOME%\bin

在CLASSPATH加入:%DERBY_HOME%\lib \derby.jar;%DERBY_HOME%\lib\derbyclient.jar;%DERBY_HOME%\lib\derbytools.jar;%DERBY_HOME%\lib\derbynet.jar

3,测试看看Derby安装成功没有

开始—Run—CMD

运行 sysinfo

如果安装成功,将会看到相关信息,下面是截取的部分信息。 继续阅读 »