社区
基础和管理
帖子详情
varchar2(N)中这个N的大的话,会不会多占用空间
Angly1018
2009-03-28 11:35:47
例如表t_table(table_name varchar2(10),table_note varchar2(2000));
执行下面语句:
insert into t_table('t01','t01);
commit;
这样的话两个字段的占用的空间是不是一样大
请达人帮忙分析一下
...全文
656
13
打赏
收藏
varchar2(N)中这个N的大的话,会不会多占用空间
例如表t_table(table_name varchar2(10),table_note varchar2(2000)); 执行下面语句: insert into t_table('t01','t01); commit; 这样的话两个字段的占用的空间是不是一样大 请达人帮忙分析一下
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
13 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fuyou001
2009-03-30
打赏
举报
回复
[Quote=引用 8 楼 hebo2005 的回复:]
有差别的,实际占的空间是自动分配
但在读取时会影响效率,尤其是大数据量的时候
[/Quote]
好像varchar2的读取效率要差些
hebo2005
2009-03-30
打赏
举报
回复
有差别的,实际占的空间是自动分配
但在读取时会影响效率,尤其是大数据量的时候
bw555
2009-03-30
打赏
举报
回复
读取时会影响效率,也就是查询速度会比较慢,存储空间应该是一样的
[Quote=引用 12 楼 Angly1018 的回复:]
可惜公司不能上CSDN
我不是问CHAR和VARCHAR2的区别
我是想问VARCHAR2(10),VARCHAR2(4000)
如果我存的数据不超过10的话,我定义它为VARCHAR2(4000)
会不会有影响
[/Quote]
Angly1018
2009-03-30
打赏
举报
回复
可惜公司不能上CSDN
我不是问CHAR和VARCHAR2的区别
我是想问VARCHAR2(10),VARCHAR2(4000)
如果我存的数据不超过10的话,我定义它为VARCHAR2(4000)
会不会有影响
「已注销」
2009-03-30
打赏
举报
回复
mark
cheng_fengming
2009-03-30
打赏
举报
回复
varchar2是变长字符,不同于char (定长类型)
也就是说varchar2(10)代表你输入的字符最长为10 当你输入"abc"时,长度为3
但是你定义了char(10),输入"abc"时就是10了
dawugui
2009-03-29
打赏
举报
回复
[Quote=引用楼主 Angly1018 的帖子:]
例如表t_table(table_name varchar2(10),table_note varchar2(2000));
执行下面语句:
insert into t_table('t01','t01);
commit;
这样的话两个字段的占用的空间是不是一样大
请达人帮忙分析一下
[/Quote]
基本一样.但不能完全说是一样.
jdsnhan
2009-03-29
打赏
举报
回复
char 是定长,varchar2是非定长的
changeking
2009-03-29
打赏
举报
回复
1楼是对的
Angly1018
2009-03-29
打赏
举报
回复
[Quote=引用 1 楼 oraclelogan 的回复:]
引用楼主 Angly1018 的帖子:
例如表t_table(table_name varchar2(10),table_note varchar2(2000));
执行下面语句:
insert into t_table('t01','t01);
commit;
这样的话两个字段的占用的空间是不是一样大
请达人帮忙分析一下
不会的,因为varchar2是自动存储的,数据占多少空间,就分配多少空间,不是一下子占满2000个字节空间的。
[/Quote]
今天有点事出去,很感谢大家
我知道VARCHAR2是自动存储的,
就像我的例子,此时两个字段在TABLESPACE占的空间是不是一样大呢?
如果像你所说的是根据数据自动分配空间,那在定义VARCHAR2类型的时候
都定义成VARCHAR2(4000),这样不更好吗
tianqiao1689
2009-03-29
打赏
举报
回复
上面的都很模糊
fcoolx
2009-03-29
打赏
举报
回复
不会啊
oraclelogan
2009-03-29
打赏
举报
回复
[Quote=引用楼主 Angly1018 的帖子:]
例如表t_table(table_name varchar2(10),table_note varchar2(2000));
执行下面语句:
insert into t_table('t01','t01);
commit;
这样的话两个字段的占用的空间是不是一样大
请达人帮忙分析一下
[/Quote]
不会的,因为varchar2是自动存储的,数据占多少空间,就分配多少空间,不是一下子占满2000个字节空间的。
MySQL 5.7优化视频教程
MySQL 5.7新增了众多特色功能,诸如Optimizer增强、支持多个触发器、P_S增强、增加sys schema、在线修改
VARCHAR
长度、并发复制等,对于提升SQL效率都有很大帮助,作为非专业DBA,如何利用这些特性帮助我们做好SQL...
mysql
varchar
长度 性能_
varchar
(n),n
varchar
(n) 长度、性能、及所占
空间
分析
各种数据库表现不同:SQL Server:
varchar
(n),n
varchar
(n)
中
的n怎么解释: n
varchar
(n)最多能存n个字符,不区分
中
英文。
varchar
(n)最多能存n个字节,一个
中
文是两个字节。所占
空间
: n
varchar
(n)一个字符
会
占两个...
面试官:MySQL
中
varchar
(n)
中
n 最大取值为多少?
要回答这个问题,首先我们得先知道 MySQL 存储一条记录的格式长什么样子。以 Compact 行格式作为例子,它长这样:可以看到,一条完整的记录分为「...举个例子,假设数据库表
中
有 2 个
varchar
(10) 类型的字段,分别为 a
char、
varchar
、
varchar
2区别
1.CHAR的长度是固定的,而
VARCHAR
2的长度是可以变化的, 比如,存储字符串“abc",对于CHAR (20),表示你存储的字符将占20个字节(包括17个空字符),而同样的
VARCHAR
2 (20)则只
占用
3个字节的长度,20只是最大值,当...
MySQL
VARCHAR
字段最大长度到底是多少
** 转载自:MySQL
VARCHAR
字段最大长度到底是多少 ...MySQL要求一个行定义长度不能超过65535个字节,不包括text、blob等大字段类型,
varchar
长度受此长度限制,和其他非大字段加起来不能超过65535个字节. 超过以上
基础和管理
17,377
社区成员
95,128
社区内容
发帖
与我相关
我的任务
基础和管理
Oracle 基础和管理
复制链接
扫一扫
分享
社区描述
Oracle 基础和管理
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章