SqlServer 建库建表(SqlServer系列 : 篇一)

打印 上一主题 下一主题

主题 861|帖子 861|积分 2593

一、创建数据库

在SqlServer中创建数据库利用 create database 关键字,具体格式如下
  1. create database 数据库名称
  2. on  
  3. (
  4.         name = 数据文件名称,
  5.         filename = 数据文件地址,
  6.         size = 数据文件内存初始大小,
  7.         filegrowth = 数据文件递增内存大小
  8. )
  9. log on  --日志文件
  10. (
  11.         name = 日志文件名称,
  12.         filename = 日志文件地址,
  13.         size = 日志文件初始化大小,
  14.         filegrowth = 日志文件递增内存大小
  15. )
复制代码


  • ON 用于指定数据库的数据文件(.mdf 文件),即现实存储数据的文件。
  • LOG ON 用于指定数据库的事务日志文件(.ldf 文件),用于纪录数据库的事务日志。
 运行以下代码即可创建DETEST数据库
  1. create database DBTEST
  2. on
  3. (
  4.         name = 'DBTEST',
  5.         filename = 'D:\Data\DBTEST.mdf',
  6.         size = 2MB,
  7.         filegrowth = 2MB
  8. )
  9. log on
  10. (
  11.         name = 'DBTEST_log',
  12.         filename = 'D:\Data\DBTEST_log.ldf',
  13.         size = 2MB,
  14.         filegrowth = 2MB
  15. )
复制代码
 二、创建数据表

在SqlServer中创建数据库利用 create table关键字,具体格式如下
  1. create table 表名
  2. (
  3.     参数名称1 数据类型,
  4.     参数名称2 数据类型,
  5. )
复制代码
 下面我们将创建三张表为后面案例做铺垫
  1. USE DBTEST --将当前查询转换到DETEST数据库
  2. create table Class --班级表
  3. (
  4.     ClassId int  primary key identity(1,1) not null, --班级ID,设置主键,自增1,不为空
  5.     name nvarchar(20) not null, --班级名称
  6.     Introduce text --班级介绍
  7. )
  8. create table Teacher --老师表
  9. (
  10.     TeacherId int  primary key identity(1,1) not null, --老师id.设置组件,自增1
  11.     name nvarchar(20) not null,--老师名称
  12.     sex         nvarchar(2) not null,--性别
  13.     age int not null,--年龄
  14.     section nvarchar(10) not null,--任教科目
  15.     Introduce text,--介绍
  16.     GuardiansPhone nvarchar(12) unique not null--电话号码,唯一性
  17. )
  18. create table Student --学生表
  19. (
  20.     StudentId int  primary key identity(1,1) not null,--学生ID,主键,自增1
  21.     ClassID int references Class(ClassId) not null,--班级ID,是班级表的外键
  22.     TeacherId int references Teacher(TeacherId) not null, --老师id,是老师表的外键
  23.     name nvarchar(20) not null,--老师名称
  24.     sex         nvarchar(2) not null default('男') check (sex='男' or sex='女'),--性别,添加只能为男或者女的约束
  25.     age int not null, --年龄
  26.     DateOfBirth datetime not null,--初始年龄
  27.     AddTime datetime default(getDate()),--添加时间,默认添加时间为当前时间
  28. )
复制代码
上面代码中我们利用到了以下参数
primary key  用于唯一标识表中的每一行。一个表只能有一个主键,主键中的字段值必须是唯一的,且不能为 NULL。
identity 属性用于自动生成列值。identity(seed, increment) 体现初始值为 seed,每次插入新行时,值增长 increment。在这个例子中,identity(1,1) 意味着从 1 开始,每次自增 1。
not null 约束用于确保某一列中的值不能为空。当一列被设置为 not null时,任何实验插入该列的 null值的操纵都会失败。
references关键字用于定义外键约束。外键用于在两个表之间建立关系,确保外键列中的值必须存在于主表的主键列中。
getDate() 函数用于获取当前的日期和时间,返回值的范例为 DATETIME。
至此,我们就将学习完成数据库的创建和数据表的创建,下一篇章(SqlServer 增、删、改(SqlServer系列 : 篇二)-CSDN博客)我们将针对数据表的增、删、改进行学习。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

篮之新喜

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表