oracle实现汉字按照拼音、笔画和部首排序
oracle实现汉字按照拼音、笔画和部首排序
找了相关的一些资料,都说的不是很清楚,自己也研究了下,终于搞明白了,希望对大家有帮助。
需要说明的是下面的方法需要ORACLE9i和以上的版本才支持。
Oracle9i之前,中文是按照二进制编码进行排序的。
在oracle9i中新增了按照拼音、部首、笔画排序功能。设置NLS_SORT值
SCHINESE_RADICAL_M 按照部首(第一顺序)、笔划(第二顺序)排序
SCHINESE_STROKE_M 按照笔划(第一顺序)、部首(第二顺序)排序
SCHINESE_PINYIN_M 按照拼音排序
helloword代码如下:
表名为 mt ,其中mtmc字段是中文,下面分别实现按照单位名称的笔划、部首和拼音排序。
1: 按照笔划排序
select * from mt order by nlssort(mtmc,'NLS_SORT=SCHINESE_STROKE_M');
2: 按照部首排序
select * from mt order by nlssort(mtmc,'NLS_SORT=SCHINESE_RADICAL_M');
3: 按照拼音排序,此为系统的默认排序方式
select * from mt order by nlssort(mtmc,'NLS_SORT=SCHINESE_PINYIN_M');
相关文档:
oracle表空间操作详解
1
2
3作者: 来源: 更新日期:2006-01-04
5
6
7建立表空间
8
9CREATE TABLESPACE data01
10DATAFILE '/ora ......
在ORACLE 10g登陆创建新用户:
在ORACLE 10g登陆创建新用户:
1、用sys 用户登录
2、create user test1 identified by test123;
3、grant connect,resource to test1;
用test1登陆: sqlplus test1/test123
安装完了Oracle数据库,忘了在口令管理中给SCOTT解锁怎么办
问题补充 ......
一、利用Class.forName函数(用java开发B/S模式的程序) 1.代码如下: //注册驱动程序
public boolean connectDb() {
try {
Class.forName("oracle.jdbc.driver.OracleDriver");
return true;
} catch (ClassNotFoundException e) {
System.out.println(e);
return false;
}
}
......
一.表空间学习
个人觉得表空间相对于数据库来说是至关重要的,一般分为permanent(永久性表空间),undo(undo表空间),temporary(临时表空间),一般我们是通过以下sql进行查看表空间的类型的.
select distinct t.contents from dba_tablespaces t;
查看表空间所对应的数据文件。
select t.name,t1.name
from v$tablespace ......
Start with...Connect By子句递归查询一般用于一个表维护树形结构的应用。
创建示例表:
CREATE TABLE TBL_TEST
(
ID NUMBER,
NAME VARCHAR2(100 BYTE),
PID NUMBER &nbs ......