标签:unicode cas 创建数据库 行记录 values 附加 media 页面 数据库
初始化参数 | 对数据库使用的影响 |
页大小(page size) | 字符串字段的最大长度及每行记录的总长度 |
日志文件大小(rlog) | 高并发事务下的刷盘速度 |
时区(time zone) | 时区不同时造成的时间不一致 |
字符串比较大小写敏感(string case sensitive) | SQL 语句及应用是否兼容 |
字符集(charset) | 字符的存储空间及可识别字符的数量 |
VARCHAR 类型以字符为单位(lengthin char) | dm 字符类型默认以字节来存储,影响应用对字符长度的判断 |
改进字符串 HASH 算法 | 改进字符串 HASH 算法 |
数据库页大小 | 每个字符类型字段实际最大长度(字节) | 每行记录除大字段外其他字段总长度(字节) |
4K | 1900 | 2000 |
8K | 3900 | 4000 |
16K | 8000 | 8000 |
32K | 8188 | 16000 |
--建表 create table t1 (c1 varchar2(8188,c2 varchar2(8188); --测试单个字段插入长度 --插入数据 declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘a‘; for i in 1..3800 loop v:=v||‘a‘; end loop; v_sql:=‘insert into t1(c1) VALUES (‘‘‘||v||‘‘‘)‘; print(v_sql); execute immediate v_sql; commit; end
--插入数据 declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘a‘; for i in 1..4000 loop v:=v||‘a‘; end loop; v_sql:=‘insert into t1(c1) VALUES (‘‘‘||v||‘‘‘)‘; print(v_sql); execute immediate v_sql; commit; end
--插入数据 declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘a‘; for i in 1..1900 loop v:=v||‘a‘; end loop; v_sql:=‘insert into t1(c1,c2) VALUES (‘‘‘||v||‘‘‘,‘‘‘||v||‘‘‘)‘; print(v_sql); execute immediate v_sql; commit; end
--插入数据
declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘a‘; for i in 1..2000 loop v:=v||‘a‘; end loop;
Select * from t1;
Select * from "t1";
Select * from t1 where c1=’a’; 在大小写敏感的库中只会出现一条记录: a 在大小写不敏感的库中会出现两条记录: a A 需要根据自己的需求合理选择该参数。
--建表 create table t2(c1 varchar2(10) --插入数据 insert into t2 values(‘a‘); insert into t2 values(‘啊‘); insert into t2 values(‘?‘); commit; --查看所占字节长度 select c1,lengthb(c1),(ascii(c1)) from t2;
--建表 create table t3(c1 varchar2(10)) --插入数据 insert into t3 values(‘a‘); insert into t3 values(‘啊‘); insert into t3 values(‘?‘); commit; --查看所占字节长度 select c1,lengthb(c1),(ascii(c1)) from t3;
--建表 create table t4(c1 varchar2(4100) --插入 declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘啊‘; for i in 1..2000 loop v:=v||‘啊‘; end loop; v_sql:=‘insert into t4(c1) VALUES (‘‘‘||v||‘‘‘)‘; print(v_sql); execute immediate v_sql; commit; end --查询字符长度和字节长度 select c1,length(c1),lengthb(c1) from t4;
--超过页大小限制则插入失败 declare v varchar2(8188); v_sql varchar2(8188); begin v:=‘啊‘; for i in 1..3000 loop v:=v||‘啊‘; end loop; v_sql:=‘insert into t4(c1) VALUES (‘‘‘||v||‘‘‘)‘; print(v_sql); execute immediate v_sql; commit; end
簇大小:16 #每次申请的页数,表存满了以后会一次性连续申请16个页 页大小:16K 日志文件大小:4*2048M 时区:+8:00 字符串比较大小写敏感:是 字符集:GB18030 VARCHAR 类型以字符为单位:否 改进字符串HASH算法:是
簇大小:16 页大小:32K 日志文件大小:2*256M 时区:+8:00 字符串比较大小写敏感:否 字符集:GB18030 (如果涉及非中英文字符选择 Unicode,VARCHAR 类型以字符为单位:如 果采用达梦 DTS 迁移选否,采用 SQL 脚本迁移选是) 改进字符串HASH算法:是
标签:unicode cas 创建数据库 行记录 values 附加 media 页面 数据库
原文地址:https://www.cnblogs.com/cqdba/p/11064804.html