查看: 2026|回复: 0

[SQLServer] SQLServer表的设计(建表)

发表于 2018-3-10 08:00:01

知识部分
1、SQLServer数据类型
·数据类型是数据的一种属性,用来定义数据是时间、数字、字符串(文字、字母)等
·SQLServer提供系统数据类型集,该类型集定义了可以与SQLServer一起使用的所有数据类型
·常用的数据类型:
int:从-2147483648到-2147483647之间的整数(可用于标识符列)
money:货币类型,可包含小数。
decimal:小数,位数较大
float:小数
datetime:日期类型
char:可包含8000个字符
varchar:较char可存储更多字符
binary:用于存储可达8000字节长的定长的二进制数据
image:大约可存储20亿个二进制数据
2、默认值
在插入数据是如果对一行的某一列没有键入数据(留空)而且设置了默认值,那么这一列就会使用默认值。
3、标识符列
表的序号,自动递增,具有三个特点:
·列的数据类型不能为小数类型
·不允许控制null
·每个表只能有一个标识符列
4、check约束
通过check约束可以限制域的完整性。通过任何基于逻辑运算符返还的TRUE或FALSE的逻辑表达式创建check约束。例如可以通过设置check约束限制输入的年龄、出生日期等数据

操作部分
·图形化建表
1、首先展开以下节点-点击新建表
SQLServer表的设计(建表)
2、SSMS会弹出一个表的设计框
SQLServer表的设计(建表)
3、建立几个列,准备做操作
SQLServer表的设计(建表)
4、大家都知每个学生的学号肯定都是独一无二的,所以我们可以将学号这一列设置为主键,不允许存在重复的
SQLServer表的设计(建表)
5、设置完成它会变成这样,出现一个钥匙图标,允许空值的勾也会自动去掉
SQLServer表的设计(建表)
6、然后我们也可以做一个标识符列,在表设计器中找到“标识规范”-将选项改为“是”即可
SQLServer表的设计(建表)
7、对于一个班级的同学,我们可以将所在班级的列设置一个默认值。这样写数据的时候如果不写所在班级系统就会自动填写上我们指定默认值。
SQLServer表的设计(建表)
8、右键点击空白处-可以新建check约束,这样就可以限制数据的写入了。例如限制性别只能填写“男”或“女”;成绩限制0到100分。
SQLServer表的设计(建表)
9、这里我限制的是成绩,填写表达式,关闭即可。其他的约束类似。
SQLServer表的设计(建表)

·T-SQL语句建表
举个例子:
create table name(
StudentID varchar(10)NOT NULL,
Sname varchar(10)DEFAULT NULL,
sex char(2)DEFAULT NULL,
cardID varchar(20)DEFAULT NULL,
Birthday datetime DEFAULT NULL,
Email varchar(40)DEFAULT NULL,
Class varchar(20)DEFAULT NULL,
enterTime datetime DEFAULT NULL)
Go
!!!首先 create 是创建的意思,table即表,name是给表起的名字。后面跟上(),()内的内容就是表的每一列;其中第一个字段为列的名字,然后是列的数据类型,后面的是否允许空值null。语句最后面的GO即为执行。操作时,我们点击SSMS左上角的“新建查询”-然后输入语句-点击“执行”
SQLServer表的设计(建表)
执行后可以看到
SQLServer表的设计(建表)
刷新一下“表”
SQLServer表的设计(建表)
新建的名为“name”的表就可以看到了
SQLServer表的设计(建表)



回复

使用道具 举报