sqlserver

写约束:gender='男' OR gender='女'注意是单引号,双引号会出错。

不允许修改表结构时

在修改表的结构(设置外键等),出现不允许保存更改。 解决:1. 菜单栏-------工具-------选项; www.dedecms.com 2. 找到设计器(Designers)-------把如下图所示的红色标记处的勾掉。

添加外键:

第一步打开要建外键表的设计器,右击选择“关系”。

然后弹出“外键关系”窗体,我们选择“添加”,然后点击“表和列规范”后面的小按钮,

就会弹出另外一个窗体让我们选择主键表和列,选好之后点击确定。

然后我们展开INSERT和UPDATE规范,在更新规则和删除规则有四个选项,分别是“不执行任何操作”、“级联”、“设置为NULL”、“设置默认值”。

 默认的不执行任何操作。如果是“不执行任何操作”,当我们删除或更新主键表的数据时,会告诉用户不能执行删除或更新该操作。“级联”的意思是当我们删除或更新主键表的数据时,会删除或更新外键表中所涉及的相关数据的所有行。“设置Null”的意思是当我们删除或更新主键表的数据时,外键表中的外键列的值会设为Null,但前提是该列允许为空。“设置默认值”的意思是如果我们将外键列定义了默认值,当我们删除或更新主键表的数据时,外键表中的外键列的值设为定义的默认值。当然我们可以用代码创建,当我们在创建数据库表T――Card时只要加上一句话就OK啦,“Foreign key (studentNo) references T_Student(studentNo)"。如果我们已经创建了改表,那如何用代码实现了,这也很简单也就一句话“add constraint CMPKey(外键名) foreign key(studentNo) references T_Student(studentNo)”。

nchar,varchar,nchar:

char是固定长度的字节,varchar是可变长度的字节,nchar是unicode编码的固定字符长度。   
如:
中国 在char(6)存储为中国加两个空格,共6个字节。
12345 在varchar(6)存储为12345,共5个字节。
中国 在varchar(6)存储为中国,共4个字节。
nchar(6)对汉字和半角字符处理时一样的,即可以存储6个汉字,也可以存储6个字母

在索引中输入:

char[(n)]

长度为n 个字节的固定长度且非unicode的字符数据。n 必须是一个介于1 和8,000之间的数值。存储大小为n个字节。
varchar[(n)]

长度为 n 个字节的可变长度且非 unicode 的字符数据。n 必须是一个介于1 和 8,000 之间的数值。存储大小为输入数据的字节的实际长度,而不是n 个字节。所输入的数据字符长度可以为零。

注释
如果没有在数据定义或变量声明语句中指定 n,则默认长度为 1。如果没有使用cast 函数指定 n,则默认长度为30。

将为使用 char 或 varchar 的对象被指派数据库的默认排序规则,除非用 collate 子句另外指派了特定的排序规则。该排序规则控制用于存储字符数据的代码页。

支持多语言的站点应考虑使用 unicode nchar 或 nvarchar 数据类型以尽量减少字符转换问题。

如果希望列中的数据值大小接近一致,请使用char。

如果希望列中的数据值大小显著不同,请使用varchar。

nchar
根据unicode标准所进行的定义,用给定整数代码返回unicode字符。

语法
nchar ( integer_expression )

参数
integer_expression

介于 0 与 65535 之间的所有正整数。如果指定了超出此范围的值,将返回 null。


你可能感兴趣的:(sqlserver)