黑马程序员技术交流社区
标题:
sql 制作表的问题
[打印本页]
作者:
杨伟芬
时间:
2012-4-12 21:10
标题:
sql 制作表的问题
data name score
2008-9-8 拜仁 胜
2008-9-8 奇才 胜
2008-9-8 湖人 胜
2008-9-8 拜仁 负
2008-9-8 拜仁 负
2008-9-8 奇才 胜
表格代码
create table [T_Scores]
([data] [datetime] null,
[name] [nvarchar] (50) collate chinese_prc_ci_as null,
[Score] [nvarchar] (50) collate chinese_prc_ci_as null
);
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af200000000 as datetime),N'拜仁, N'胜');
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af300000000 as datetime),N'奇才', N'胜');
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af300000000 as datetime),N'湖人', N'胜');
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af400000000 as datetime),N'拜仁', N'负');
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af200000000 as datetime),N'拜仁', N'负');
insert [T_Scores] ( [date] ,[name],[Score]) values (cast (0x00009af600000000 as datetime),N'奇才', N'胜');
疑问,请各位帮忙指教 谢谢!
一、 在 create table 中 collate chinese_prc_ci_as null 这是什么意思,表示这里写中文吗;
二、cast (0x00009af200000000 ) as datetime 这句话是将前面的转化成时间的数据类型,那前面的表示的是什么意思,16进制吗;
三、[T_Scores] ( [date] ,[name],[Score]) 字段 都用中括号括起来了,那有不用中括号的表达方式吗,如果不用中括号是不是 insert into…… 要加上 into;
谢谢指教!!
作者:
谢栋文
时间:
2012-4-12 22:04
COLLATE (Transact-SQL) 一个子句,可应用于数据库定义或列定义以定义排序规则,或应用于字符串表达式以应用排序规则转换。
COLLATE 子句只能应用于 char、varchar、text、nchar、nvarchar 和 ntext 数据类型。
COLLATE 使用 collate_name 引用 SQL Server 排序规则或 Windows 排序规则的名称,以应用于表达式、列定义或数据库定义。collation_name 只能是指定的 Windows_collation_name 或 SQL_collation_name,参数必须包含文字值。collation_name 不能用变量或表达式来表示。
排序规则一般由排序规则名称标识,安装过程中除外。在安装过程中,您应该为 Windows 排序规则指定根排序规则指示符(排序规则区域设置),然后指定区分或不区分大小写或重音的排序选项。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2