A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 甘斌斌 中级黑马   /  2013-6-19 07:00  /  1327 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

SQL数据库中date、datetime、datetime2(7)、datetimeoffset2(7)分别用于定义什么类型的数据?char(10)、nchar(10)、nvchar(50)表示的数据有什么特点?
还有其他的数据类型各有什么特点?

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

3 个回复

倒序浏览
date: "yyyy-mm-dd"格式表示的日期值。取值范围:“1000-01-01”到"9999-12-31"
datetime: "yyyy-mm-dd hh:mm:ss"格式表示的日期时间值。取值范围:"1000-01-01 00:00:00"到"9999-12-31 23:59:59"
datetime2(7):  可将 datetime2  视作现有 datetime  类型的扩展,其数据范围更大,默认的小数精度更高;
datetimeoffset2(7):   datetime2(n)值复制到 datetimeoffset(n) 值。时区偏移量设置为 +00:0。例如:2013-06-17 12:35:29.1234567 +12:15
char(10): 固定长度字符串, 长度为m
nchar(10): 固定长度国际化字符串,长度为10
nvchar(50): nvchar表示长度可变,而char表示长度一旦确定即不可改变。
回复 使用道具 举报
再补充一点,你可以把char(10),nchar(10),nvchar(50)理解成string 类型
回复 使用道具 举报
char和nchar是固定长度的字符串类型
varchar和nvarchar是可变长度的字符串类型
例:定义char(6)或nchar(6)存放123  : 在计算机里就是存放了123和3个空格,共6个字节
定义varchar(6)或nvarchar(6)存放123  : 在计算机里就是存放了123,共3个字节
如果希望列中的数据值大小接近一致,请使用char或nchar
如果希望列中的数据值大小显著不同,请使用varchar或nvarchar。     

char与nchar,varchar与nvarchar的区别:
nchar,nvarchar都是根据unicode标准所进行的定义,用给定整数代码返回unicode字符。他们把字母和汉字都当作一个字节来处理
举个例子:
用char来存放中国两个字需要至少定义为char(4)
用nchar来存放中国只需要定义为nchar(2)
所以的话,当一个字符串中有多语言时,就用nchar或nvarchar吧

评分

参与人数 1技术分 +1 收起 理由
苏波 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马