varchar(n)中,n有什么意义 既然varchar数据存储大小以输入数据的字节的实际长度为准,区别于char,那么n有什么实际意义,在磁盘上存储具体跟char有什么区别呢?不明白,请高手指教。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 Msg 8152, Level 16, State 14, Line 1String or binary data would be truncated.The statement has been terminated. 既然varchar数据存储大小以输入数据的字节的实际长度为准,区别于char,那么n有什么实际意义CHAR是会自动填空的CHAR(5)'A ' char(n)与varchar(n)都可保存<n的字符串,char字符<n时,后面用空格填满,varchar(n)后面不用空格填满. n--该varchar字段的最大长度.varchar(10),char(10)的区别.如果只输入不到十个字符,那么char型字段将补空格以填满这十个字符,varchar则不填.如果是十个字符,则一样. char数据类型中多余的空间用空格代替而varchar数据类型中的多余空间会自动释放(好像记得是这样的) n表示所能存储的最大字符数.varchar类型与char类型都有存储长度限制,不同的是,如果实际字符长度没有超过指定最大长度,varchar存储实际长度,而char在实际字符串后面加上空格补足. VARCHAR为变长字段,N为该字段最大长度,无论你怎么加怎么UPDATE都不准大于这个值,就是这样了 不同DB,含义有差,比如:oracle/sqlserver/mysql等数据库的varchar(n),n表示字节数(一个汉字占两个字节)postgres的varchar(n),n表示字符数(一个汉字就是一个字符) android的内置SQLite数据库在哪个文件夹下? 有没有人讲讲游标跟事务的作用是什么啊 真正的菜鸟:第一天问题 替换字符串中的一个字符 用触发器实现还原 Update语句 请教一个简单的sql查询的问题 [sql2000]将表中分组数据合并成一行的查询语句的写法,在帖子中有更具体的描述 急! 本地SQLSERVER 连接远程SQL服务器 时返回错误 ‘超时已过期’? MS SQL Server 2005安装问题 安装SqlServer2005报错
String or binary data would be truncated.
The statement has been terminated.
CHAR(5)
'A '
与varchar(n)
都可保存<n的字符串,char字符<n时,后面用空格填满,varchar(n)后面不用空格填满.
如果只输入不到十个字符,
那么char型字段将补空格以填满这十个字符,varchar则不填.如果是十个字符,则一样.
而varchar数据类型中的多余空间会自动释放
(好像记得是这样的)
oracle/sqlserver/mysql等数据库的varchar(n),n表示字节数(一个汉字占两个字节)
postgres的varchar(n),n表示字符数(一个汉字就是一个字符)