Eden

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

文章分类 -  Database

PostgreSQL - MySQL - SQLite - Firebird - db4o - MongoDB
摘要:在oracle 9i之前,对中文的排序,是默认按2进制编码来进行排序的. 9i时增加了几种新的选择:按中文拼音进行排序:SCHINESE_PINYIN_M按中文部首进行排序:SCHINESE_RADICAL_M按中文笔画进行排序:SCHINESE_STROKE_M而oracle 9i是对中文的排序是默认按拼音排序(并不是指NLS_SORT = SCHINESE_PINYIN_M,而是说SQL中不指... 阅读全文
posted @ 2010-11-02 11:18 Johney 阅读(29249) 评论(0) 推荐(4) 编辑

摘要:前几天同事问到如何能使oracle中的查询大小写不敏感,为此我特意查阅了一下oracle的官方文档.总结如下: 首先,oracle中默认排序和对比列值时是区分大小写的,这点与mysql可不一样!!! 大小写不敏感的查询在数据库中可以通过语句:ALTER SESSION SET NLS_COMP = LINGUISTIC; 来使查询时,列的对比基于语义对比,会忽略大小写.但是,从执行计划中可以看到这... 阅读全文
posted @ 2010-11-02 11:17 Johney 阅读(7786) 评论(0) 推荐(0) 编辑

摘要:说到软解析(soft prase)和硬解析(hard prase),就不能不说一下Oracle对sql的处理过程。当你发出一条sql语句交付Oracle,在执行和获取结果前,Oracle对此sql将进行几个步骤的处理过程:1、语法检查(syntax check)检查此sql的拼写是否语法。2、语义检查(semantic check)诸如检查sql语句中的访问对象是否存在及该用户是否具备相应的权限。... 阅读全文
posted @ 2010-11-02 11:14 Johney 阅读(8487) 评论(0) 推荐(2) 编辑

摘要:今天在扩展ibator插件时,在生成model中每个field的注释时,想从oracle数据库中获取每个字段的comments作为注释.使用jdbc的支持,代码如下:ResultSet rs = (java.sql.DatabaseMetaData)databaseMetaData.getColumns(localCatalog, localSchema,localTableName, null)... 阅读全文
posted @ 2010-11-02 11:10 Johney 阅读(10343) 评论(2) 推荐(1) 编辑

摘要:跟同事闲聊时,说到从存放了100万行数据的表中,返回10万行数据时,是使用索引扫描速度快还是全表扫描速度快?基于这个话题,以个人理解描述一下oracle到底是否会如上所说.oracle 10g已经不存在基于rule的优化器了,全部都是CBO了.之所以先说这个,是因为oracle这个举动明显提示了我们,要勤做统计分析.首先设计一下实验场景,因为oracle会根据查询的行数,表的总行数,数据的直方图(... 阅读全文
posted @ 2010-11-02 11:08 Johney 阅读(7469) 评论(2) 推荐(0) 编辑

摘要:1、软硬件环境  服务器HP Proliant DL580G4(Intel Xeon 3.16GHz/4GB/ 72.8*4/RAID4)  操作系统Red Flag DC Server release 5.0 (Trinity) for x86-64 Linux  数据库Oracle 10.2.0.1.0  2、问题现象  数据库系统已经试运行了半个多月,在连接数据库后做数据更新时出现ORA-0... 阅读全文
posted @ 2010-11-02 10:12 Johney 阅读(4127) 评论(0) 推荐(0) 编辑

摘要:最近,在项目组使用的mysql数据库中,插入数据出现乱码,关于这个问题做了下总结,我们从最基本的地方说起,到错误产生的深层次原因和解决办法。基本概念• 字符(Character)是指人类语言中最小的表义符号。例如’A'、’B'等;• 给定一系列字符,对每个字符赋予一个数值,用数值来代表对应的字符,这一数值就是字符的编码(Encoding)。例如,我们给字... 阅读全文
posted @ 2010-10-27 10:50 Johney 阅读(182914) 评论(5) 推荐(22) 编辑

摘要:最近在项目开发过程中常常遇到这样的情况,在写测试时,由于外键约束,我们在写测试sql的时候,不得不先在引用的表中插入相关数据,以避免数据操作时的错误。也许有时候是测试必须的,但大多时候,这个不是必须的。 测试所针对的功能不是必须操作引用表的时候,我们如何来将数据插入并且避免外键约束的错误呢。其实mysql中提供了这样的功能,在很多时候这个功能是非常有用的。要使得对有外键关系的表重新载入转储文件变... 阅读全文
posted @ 2010-10-27 10:46 Johney 阅读(51879) 评论(0) 推荐(1) 编辑