12 2017 档案

摘要:PostgreSQL中用CREATE OR REPLACE VIEW更新视图时,只能在最后增加字段,不能改字段名、不能删除字段、也不能在中间增加字段。建议改用先DROP VIEW再CREATE VIEW的风格,为防止视图层次引用所带来的顺序问题,在DROP VIEW时同时带上IF EXISTS和CASCADE选项。 阅读全文
posted @ 2017-12-23 15:33 闻歌感旧 阅读(3354) 评论(0) 推荐(0)
摘要:PostgreSQL在位操作时,有时会报"can't cast type numeric to bit"的错误。这是因为参与运算的变量被定义为numeric(n, 0)而不是直接定义为整型,因此需要先将其转换为整形再使用位操作符。 阅读全文
posted @ 2017-12-19 09:52 闻歌感旧 阅读(1484) 评论(0) 推荐(0)
摘要:程序运行时抛出“不良的类型值: long”错误,经分析是在读取主库按二进制数组方式存储的LOB数据时,按默认的oid + bigobject方式而导致。早先的重写PostgreSQL94Dialect的remapSqlTypeDescriptor()接口仍不能杜绝错误产生。经分析hibernate-core源码,继续改写getSqlTypeDescriptorOverride()接口,终于解决了问题。 阅读全文
posted @ 2017-12-11 17:54 闻歌感旧 阅读(23833) 评论(0) 推荐(1)
摘要:PostgreSQL的数据字典里存放的表名、列名均为全小写,而其JDBC的部分接口在处理时没有进行大小写转换,导致调用时的返回结果为空。个人倾向于认为这是bug,请在使用相关接口时加入大小写转换的代码。 阅读全文
posted @ 2017-12-08 14:07 闻歌感旧 阅读(1290) 评论(1) 推荐(0)