oracle Long数据类型总结

前端之家收集整理的这篇文章主要介绍了oracle Long数据类型总结前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

转载地址:http://blog.csdn.net/gumengkai/article/details/50900460


--概述@H_403_7@

SELECT@H_403_7@*@H_403_7@FROM@H_403_7@t_20160315;@H_403_7@

1@H_403_7@.存储可变长字符串,最大长度为2G

2@H_403_7@.对于超出一定长度的文本,基本上用long型存储,比如数据字典表中的许多字段

SELECT@H_403_7@*@H_403_7@FROM@H_403_7@All_Tab_Cols aWHERE@H_403_7@a.data_type=@H_403_7@'LONG'@H_403_7@;@H_403_7@

3@H_403_7@.long型主要用于不需要字符串搜索操作的长串数据,如果需要字段搜索就需要使用varchar2类型

4@H_403_7@.很多工具,包括sqlplus等,处理long型数据都比较困难

5@H_403_7@.long型数据的使用受限于磁盘的大小

--sql@H_403_7@使用场景@H_403_7@

1@H_403_7@.select语句

2@H_403_7@.update中set语句

3@H_403_7@.insert中VALUES语句

INSERT@H_403_7@INTO@H_403_7@t_20160315VALUES@H_403_7@(@H_403_7@1@H_403_7@,@H_403_7@'test'@H_403_7@);@H_403_7@

UPDATE@H_403_7@t_20160315 aSET@H_403_7@a.test=@H_403_7@'test1'@H_403_7@;@H_403_7@

--@H_403_7@限制场景@H_403_7@

1@H_403_7@.一个table只能有一个long数据类型

ALTER@H_403_7@TABLE@H_403_7@t_20160315ADD@H_403_7@test1VARCHAR2@H_403_7@(@H_403_7@8@H_403_7@);@H_403_7@

2@H_403_7@.不能索引long数据类型的列

CREATE@H_403_7@INDEX@H_403_7@idx_sys_20160315_testON@H_403_7@t_20160315(@H_403_7@test@H_403_7@);@H_403_7@

3@H_403_7@.不能将含有long类型列的表做聚簇

4@H_403_7@.不能再sqlplus中将long型列的值插入到另一张表中

CREATE@H_403_7@TABLE@H_403_7@t_20160315a(@H_403_7@ID@H_403_7@NUMBER@H_403_7@,@H_403_7@TEST@H_403_7@LONG@H_403_7@);@H_403_7@

SELECT@H_403_7@*@H_403_7@FROM@H_403_7@t_20160315a;@H_403_7@

INSERT@H_403_7@INTO@H_403_7@t_20160315aSELECT@H_403_7@ID@H_403_7@,@H_403_7@TEST@H_403_7@FROM@H_403_7@t_20160315;@H_403_7@

5@H_403_7@.不能在sqlplus中通过select 的方式创建Long类型的列

CREATE@H_403_7@TABLE@H_403_7@t_20160315bAS@H_403_7@SELECT@H_403_7@*@H_403_7@FROM@H_403_7@t_20160315;@H_403_7@

6@H_403_7@.不能在long列中加约束条件(@H_403_7@除了null,@H_403_7@NOT@H_403_7@NULL@H_403_7@,@H_403_7@DEFAULT之外),@H_403_7@如,关键字列不能是long列

7@H_403_7@.long类型的列不用用于select的以下子句中,GROUP@H_403_7@BY@H_403_7@,@H_403_7@ORDER@H_403_7@BY@H_403_7@,@H_403_7@WHERE@H_403_7@,以及带有distinct的语句中

SELECT@H_403_7@DISTINCT@H_403_7@TEST@H_403_7@FROM@H_403_7@t_20160315;@H_403_7@

SELECT@H_403_7@*@H_403_7@FROM@H_403_7@t_20160315ORDER@H_403_7@BY@H_403_7@TEST@H_403_7@;@H_403_7@

8@H_403_7@.long类型的列不能用于分布查询

9@H_403_7@.plsql过程的变量不能定义为long类型

10@H_403_7@.Long类型的列不能被sql函数改变,如substr,@H_403_7@INSTR@H_403_7@

猜你在找的Oracle相关文章