博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Oracle 内置数据类型 -- 字符
阅读量:4050 次
发布时间:2019-05-25

本文共 2556 字,大约阅读时间需要 8 分钟。

-- Start

CHAR

CREATE TABLE TEST(  -- 语法:CHAR [(size [BYTE | CHAR])]    -- 默认长度(size)是 1,最大长度是 2000  -- 默认修饰符是 BYTE, 但可以通过修改参数 NLS_LENGTH_SEMANTICS 来设置默认值为 CHAR  -- SELECT * FROM NLS_SESSION_PARAMETERS WHERE PARAMETER='NLS_LENGTH_SEMANTICS'  COL1 CHAR,    -- 同 COL1 相同  COL2 CHAR(1 BYTE),    -- 根据数据库字符集的不同,CHAR 由 1 到 4 BYTE 组成,  -- 所以如果你的数据库是此类字符集,那么推荐你使用 CHAR  -- 由于性能的原因,Oracle 推荐我们不要指定长度修饰符,而是通过 NLS_LENGTH_SEMANTICS 来设置  -- ALTER SESSION SET NLS_LENGTH_SEMANTICS=CHAR  COL3 CHAR(10 CHAR));-- 语法 1:''-- 如果要输入单引号,用两个单引号代表一个单引号INSERT INTO TEST VALUES ('a', '1', 'I''m bo');-- 语法 2:q'delimiter XXX delimiter'INSERT INTO TEST VALUES ('b', '2', q'/I'm bo/');INSERT INTO TEST VALUES ('c', '3', Q'[I'm bo]');INSERT INTO TEST VALUES ('d', '4', q'8I'm bo8');INSERT INTO TEST VALUES ('e', '5', Q'KI'm boK');INSERT INTO TEST VALUES ('f', '6', q'
');

VARCHAR2

CREATE TABLE TEST(  -- 语法:VARCHAR2(size [BYTE | CHAR])    -- 如果 MAX_STRING_SIZE=STANDARD, 最大长度是 4000 bytes  -- 如果 MAX_STRING_SIZE=EXTENDED, 最大长度是 32767 bytes  -- 默认修饰符是 BYTE, 但可以通过修改参数 NLS_LENGTH_SEMANTICS 来设置默认值为 CHAR  -- SELECT * FROM NLS_SESSION_PARAMETERS WHERE PARAMETER='NLS_LENGTH_SEMANTICS'  COL1 VARCHAR2(10),    -- 同 COL1 相同  COL2 VARCHAR2(10 BYTE),    -- 由于性能的原因,Oracle 推荐我们不要指定长度修饰符,而是通过 NLS_LENGTH_SEMANTICS 来设置  -- ALTER SESSION SET NLS_LENGTH_SEMANTICS=CHAR  COL3 VARCHAR2(10 CHAR));-- 语法 1:''-- 语法 2:q'delimiter XXX delimiter'INSERT INTO TEST VALUES ('I''m bo', Q'[I'm bo]', q'/I'm bo/');INSERT INTO TEST VALUES (q'8I'm bo8', Q'KI'm boK', q'
');

NCHAR

CREATE TABLE TEST(  -- 语法:NCHAR[(size)]    -- 默认长度(size)是 1 个字符(char),最大长度是 2000 个字节(byte),注意是字节,  -- 如果数据库编码 1 个字符由 2 个字节组成,那么最大长度是 1000 个字符  COL1 NCHAR,    -- NCHAR 列只能插入 UNICODE 编码的字符串,由于编码不同,CHAR 和 NCHAR 是不兼容的  COL2 NCHAR(10));-- 语法 1:N'xxx'INSERT INTO TEST VALUES (n'a', N'尚波');-- 语法2:NQ'delimiter XXX delimiter'INSERT INTO TEST VALUES (n'a', nq'[尚波]');INSERT INTO TEST VALUES (n'b', nq'8尚波8');INSERT INTO TEST VALUES (n'c', nq'H尚波H');INSERT INTO TEST VALUES (n'd', nq'/尚波/');

NVARCHAR2

CREATE TABLE TEST(    -- 语法:NVARCHAR2(size)      -- NVARCHAR2 列只能插入 UNICODE 编码的字符串    -- 如果 MAX_STRING_SIZE=STANDARD, 最大长度是 4000 bytes    -- 如果 MAX_STRING_SIZE=EXTENDED, 最大长度是 32767 bytes    COL1 NVARCHAR2(10));-- 语法 1:N'xxx'INSERT INTO TEST VALUES (N'尚波');-- 语法2:NQ'delimiter XXX delimiter'INSERT INTO TEST VALUES (nq'[尚波]');INSERT INTO TEST VALUES (Nq'8尚波8');INSERT INTO TEST VALUES (nQ'H尚波H');INSERT INTO TEST VALUES (NQ'/尚波/');

--更多参见:

-- 声明:转载请注明出处

-- Last edited on 2015-07-04

-- Created by ShangBo on 2014-12-07

-- End

你可能感兴趣的文章
出现( linker command failed with exit code 1)错误总结
查看>>
iOS开发中一些常见的并行处理
查看>>
iOS获取手机的Mac地址
查看>>
ios7.1发布企业证书测试包的问题
查看>>
如何自定义iOS中的控件
查看>>
iOS 开发百问
查看>>
Mac环境下svn的使用
查看>>
github简单使用教程
查看>>
如何高效利用GitHub
查看>>
GitHub详细教程
查看>>
Swift概览
查看>>
iOS系统方法进行AES对称加密
查看>>
程序内下载App,不用跳转到AppStore
查看>>
iOS应用崩溃日志分析
查看>>
获取手机系统大小、可用空间大小,设备可用内存及当前应用所占内存等
查看>>
IOS7 开发注意事项
查看>>
iOS开发~CocoaPods使用详细说明
查看>>
在xcode6中使用矢量图(iPhone6置配UI)
查看>>
Mac OS X中Apache开启ssl
查看>>
Xcode批量打包ipa
查看>>