SQL Server 建库,表,约束(一)

原创 2012年03月22日 15:17:10

要点:

1.GO是用来分割批处理的语句.而局部变量的范围仅限于一个批处理内,在GO之后就不能使用之前定义的变量

2.创建数据库 CREATE DATABASE studentManager 和 生成主数据文件,日志文件之间 不要加GO语句,加了的话,会报错,生成不了 主次数据文件,和日志文件

 

3.一个数据库中,只可以有一个 主数据文件(扩展名: .mdf),多个次数据文件(扩展名: .ndf)多个日志文件(扩展名: .Ldf)

 

 

 

studentManager.mdf

 

USE master
go
--查找全部数据库中 如果有 名为 studentManager 则删除
if exists (SELECT * FROM sysdatabases WHERE name = 'studentManager')
   drop database studentManager
go
CREATE DATABASE studentManager
--这里不要加GO语句,加了的话,生成不了 主数据文件,和日志文件

on
primary --主数据文件
( 
  name = 'studentManager',
  fileName = 'D:\SQLServer\Data\studentManager.mdf',
  size = 5 MB ,
  maxSize = 50 MB ,
  fileGrowth = 1 MB
)
-- 这里还可以加 次数据文件,扩展名为 .ndf

log on --日志文件
( name = 'studentManager_log',
  fileName = 'D:\SQLServer\Data\studentManager_log.ldf',
  size = 5 MB ,
  maxSize = 50 MB ,
  fileGrowth = 1 MB  
)
-- 这里还可以加多个日志文件,扩展名为 .ldf
go

USE studentManager
go

--建 主表
create table student(
  --字段名  数据类型  约束(一般在此只加非空约束)
     stuId int identity not null ,  -- identity 标识符 自增 1
     stuName varchar(10) not null ,
     stuAge int not null ,
     stuTel varchar(11) not null,
     stuAddress varchar(20),
     groupId int not null
)
go

--建子表
create table exam(
     
     examId int identity not null ,
     stuId int not null , --外键
     writeResult int ,
     computerResult int  
)
go

--给表添加约束条件
alter table student
   add constraint pk_stuId 
            primary key (stuId), --主键约束
       constraint ch_stuAge 
            check (stuAge>=0 and stuAge<=60), --check约束
       constraint ch_stuTel  --check约束
            check (stuTel like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9]'),--check约束 用了通配符

       constraint DE_stuAddress  --default约束
            default '地址不详' for stuAddress
go
alter table exam
   add constraint pk_examId 
            primary key (examId),
       constraint ch_writeResult 
            check (writeResult>=0 and writeResult<=100),
       constraint ch_computerResult 
            check (computerResult>=0 and computerResult<=100),
       --设外键
       constraint exam_stuId
            foreign key (stuId)
            references student(stuId)
go



 

 


 

版权声明:本文为博主原创文章,未经博主允许不得转载。

SQLSERVER快速建库脚本

MSSqlServer快速建库脚本JerryTienCN①建库--搜索[Sharp4DemoDase]          --更改为你要创建的库名称--搜索N'Sharp4DBTest_log'   ...
  • jerrytiencn
  • jerrytiencn
  • 2011年01月18日 18:52
  • 1355

SQL语句(建库、建表、修改语句)

--创建一个数据库名为‘sql_test’create database sql_testgo --打开数据库 sql_testuse sql_testgo--建立学生表create table 学生...
  • zyf1203
  • zyf1203
  • 2007年05月13日 08:32
  • 19983

sql server 建库建表脚本

这些都是简单基础的脚本,其中文件size根据实际情况修改!
  • tongye20060601
  • tongye20060601
  • 2011年05月30日 19:48
  • 3096

mysql建库语句

DROP DATABASE `wordpress`; CREATE DATABASE  `wordpress` DEFAULT CHARACTER SET utf8 COLLATE utf8_g...
  • magicbreaker
  • magicbreaker
  • 2014年06月20日 15:13
  • 19072

如何用SQL语句创建数据库

如何用SQL语句创建数据库说明:在项目的开发当中数据库需要部署在客户的实际环境中试运行,但我们在部署的时候需要考虑的是,后台的数据库如何移植到客户的计算机中,考虑到各种版本的兼容性,最好的办法就是编写...
  • letian_fly
  • letian_fly
  • 2008年06月17日 14:08
  • 26851

sqlserver 使用脚本创建作业 (by me)

use master go --定义创建作业 DECLARE @jobid uniqueidentifier, @jobname sysname SET @jobname = N'testIn...
  • u012307002
  • u012307002
  • 2014年02月16日 16:20
  • 2522

SQL数据库建表建库语句

  • 2013年03月23日 09:59
  • 4KB
  • 下载

SQL server 数据库的创建

  • 2017年10月21日 21:54
  • 3.28MB
  • 下载

如何创建 SQL Server 数据源

软件环境 数据库:SQL Server 2005 桌面产品:SuperMap Deskpro .NET 6R (2012) 实现内容 使用 SuperMap Deskpro .NET 6R (...
  • supermapsupport
  • supermapsupport
  • 2017年05月03日 20:49
  • 1456

QL之-建库、建表、建约束、关系SQL基本语句

SQL之-建库、建表、建约束、关系SQL基本语句大全.txt举得起放得下叫举重,举得起放不下叫负重。头要有勇气,抬头要有底气。学习要加,骄傲要减,机会要乘,懒惰要除。人生三难题:思,相思,单相思。 S...
  • xiyiyindie
  • xiyiyindie
  • 2016年09月19日 10:57
  • 1763
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:SQL Server 建库,表,约束(一)
举报原因:
原因补充:

(最多只允许输入30个字)