1 ORACLE 笔记
1.1 序言
1.2 数据类型
1.2.1 Oracle_built_in_datatype(内置数据类型)
1.2.1.1 字符类型
字符类型主要包括以下四种类型,用法图如下
默认情况下 单位是 byte
1.2.1.1.1 Char
char(size byte|char) , char 类型的主要特点是定长,如果不足则自动以空格补充。
由于oracle的基本管理单位块的大小是 2k/4K/8K , 为了方便管理 char的最大必须在一个块内,也就是说char的最大长度是 2K ,2000bytes。
中文一般采用的是双字节字符集。
1.2.1.1.2 Varchar2
Varchar2(size byte|char)
Varchar2采用的变长的的存储机制,即使没有填满也不进行补充。
Varchar2 的最大长度是 4K,4000bytes。
1.2.1.1.3 Nchar
Nchar(size byte|char)
国家字符集:unicode 。要能使用unicode必须使用N开头的数据类型,例如 Nchar ,Nclob 等。
位、字节、字符:一个字节等于8位,一个字符可以是一个字节或者是多个字节,更像是逻辑单位。
1.2.1.1.4 Nvarchar2
1.2.1.1.5 Varchar
1.2.1.2 数值
1.2.1.2.1 固点数值类型
1.2.1.2.2 浮点数值类型
1.2.1.3 二进制数据类型
1.2.1.3.1 Long raw
1.2.1.3.2 raw
1.2.1.4 日期
1.2.1.4.1 Date 类型
1.2.1.4.2 Timestamp类型
1.2.1.5 大对象类型
1.2.1.5.1 LOB
1.2.1.5.2 Bfile
1.2.1.6 行地址类型
1.2.1.6.1 Rowid
1.2.1.6.2 Urowid
1.2.2 ANSI_support_datatype(美国国际标准化组织支持的通用数据类型)
1.2.3 User_defined_datatype(用户自定义数据类型)
1.2.4 Oralce_supplied type
1.3 数据类型转换
1.3.1 隐士转换
1.3.2 显示转换
1.4 Oracle对象
1.5 字符编码
例如: 对于ascii编码 A -> 0100 0001 ,A对应的数字是65,所以存储在计算机中的形式就是0100 0001
1.5.1 Unicode编码
Unicode 中, 一个字符实际上对应一种叫做 code point 的东西。
Unicode 中 code point 的数字的大小是没有限制的,而且也早就超过了 65535. 所以不是每个字符都能存储在两个字节中。
那么,一个字符串 "Hello", 在 Unicode 中会表示成 5 个 code points :
U+0048 U+0065 U+006C U+006C U+006F
1.5.2 常见字符集
ZHS16GBK 在中国主要使用的字符集
US7ASCII 美国字符集
WE8ISO8859P1 西欧字符集
1.5.3 查询字符集参数
nls_database_parameters
v#nls_parameters
props$
其中列 nls_characterset 表示字符集
Nls_nchar_character 表示国家字符集。
NLS ‘National Language Support (NLS)’
Oracle的字符集命名遵循以下命名规则:
<Language><bit size><encoding>
即: <语言><比特位数><编码>
比如: ZHS16GBK表示采用GBK编码格式、16位(两个字节)简体中文字符集
1.5.4 修改数据库字符集
1. 修改数据库字符集必须有个条件满足,即新的字符集是现在字符集的超集才可以修改,否则无法修改。
2. 修改字符集有两种方法
第一种是通过命令修改 alert databasecharactor set utf8
第二种是将老数据库中的数据导出,建立新的数据库,然后再导入。
1.5.5 客户端字符集
1.5.5.1 客户端字符集查看
客户端字符集是通过设置 nls_lang 这个参数
例如 NLS_LANG = AMERICAN_AMERICA.US7ASCII
$export NLS_LANG
1、NLS_DATABASE_PARAMETERS--显示数据库当前NLS参数取值,包括数据库字符集取值
2、 NLS_SESSION_PARAMETERS--显示由NLS_LANG 设置的参数,或经过alter session 改变后的参数值(不包括由NLS_LANG 设置的客户端字符集)
3、 NLS_INSTANCE_PARAMETE--显示由参数文件init<SID>.ora 定义的参数V$NLS_PARAMETERS--显示数据库当前NLS参数取值
1.5.5.2 客户端字符集的设置
Unix环境 : 编辑 oralce用户的 profile文件,设置NLS_LANG 参数
使用下列方法可以修改NLS参数
(1)修改实例启动时使用的初始化参数文件
(2)修改环境变量NLS_LANG
(3)使用ALTER SESSION语句,在oracle会话中修改
(4)使用某些SQL函数
NLS作用优先级别:Sql function>alter session>环境变量或注册表>参数文件>数据库默认参数
分享到:
相关推荐
oracle数据类型总结PPT,类型之间的区别
oracle数据类型的经典学习资料
oracle新手入门指导之四——ORACLE数据类型 .txtoracle新手入门指导之四——ORACLE数据类型 .txt
Oracle的数据类型: 1、CHAR数据类型,该类型是固定长度的字符串,如果没指定大小,则默认占用一字节,如果输入的值小于指定的长度,则数据库用空格填充至固定长度,如果用户输入的值大于指定的长度,则数据库...
Oracle数据类型之Number, 全方位介绍Number数据类型。
oracle数据库中各种数据类型的详细说明
oracle数据类型.docoracle数据类型.doc
ORACLE数据类型
RT oracle数据类型及存储方式.doc
公司内部培训V3.0 oracle 数据类型及常用函数培训
关于oracle数据类型及存储方式基础知识,也许对你有所帮助
oracle数据类型,CHAR 固定长度字符串 最大长度2000 bytes
Oracle10g reference操作手册,附Oracle数据类型精解,以及Powerdesigner实例傻瓜式图文教程,方便入门的同时提供相应实际实践经验
Oracle数据类型说明,CHAR VARCHAR2 NCHAR NVARCHAR2 等
涵盖很全的Oracle 10g数据库学习教程,我在网上找了很久才找到,适合初学oracle的人学习。
Oracle实用教程_04章_Oracle数据类型和函数[整理].pdf
SqlServer,Oracle数据类型,函数,导入导出对照
Oracle 数据类型及存储方式 数据存储是数据流在加工过程中产生的临时文件或加工过程中需要查找的信息。数据以某种格式记录在计算机内部或外部存储介质上。
不同于MySQL,Oracle有着其独特的数据类型,本文档整理了Oracle常用的数据类型,并对不同数据类型的使用场景进行了描述。