--
use master
go

IF EXISTS (SELECT * FROM sys.databases WHERE name = 'StudyDB')
 DROP DATABASE StudyDB  --如果存在则删除
GO
EXEC xp_cmdshell 'mkdir D:\SQL' --调用DOS命令创建文件夹
--建库
CREATE DATABASE StudyDB
ON PRIMARY( --PRIMARY 可选指定主文件组中的文件
 
 NAME = 'StudyDB1_data', --主数据文件的逻辑名
 FILENAME = 'D:\SQL\StudyDB1_data.mdf' , --主数据文件的物理名
 SIZE = 3MB,      --主数据文件初始大小
 MAXSIZE = 5MB,    --主数据文件最大大小
 FILEGROWTH = 20%   --主数据文件的增长率 
), --注意","号分隔
(
 
 NAME = 'StudyDB2_data', --主数据文件的逻辑名
 FILENAME = 'D:\SQL\StudyDB2_data.ndf' , --主数据文件的物理名
 SIZE = 512 KB,      --主数据文件初始大小
 MAXSIZE = 5MB,    --主数据文件最大大小
 FILEGROWTH = 20% 
)
LOG ON
(
 
 NAME = 'StudyDB1_log',
 FILENAME = 'D:\SQL\StudyDB_log1.ldf' ,
 SIZE = 512KB,
 MAXSIZE = 3MB,
 FILEGROWTH = 20%
),  --注意","号分隔
(

 NAME = 'StudyDB2_log',
 FILENAME = 'D:\SQL\StudyDB_log2.ldf' ,
 SIZE = 512KB,
 MAXSIZE = 3MB,
 FILEGROWTH = 20%
)
go
--建表
use StudyDB  --必须使用StudyDB这个数据库,不然你建立的表在master数据库里面
go
IF EXISTS(SELECT * FROM sys.objects WHERE name='stuInfo')
  DROP TABLE stuInfo
--创建主表stuInfo--
CREATE TABLE stuInfo
(
 stuName    NVARCHAR(20)    NOT NULL,
 stuNo      NCHAR(6)        NOT NULL,
 stuSex     NCHAR(4)        NOT NULL,
 stuAge     SMALLINT        NOT NULL,
 stuSeat    SMALLINT        IDENTITY(1,1),
 stuAddress NTEXT

GO
--为主表stuInfo创建约束[在外添加约束]--
ALTER TABLE stuInfo
  ADD CONSTRAINT PK_stuNo      PRIMARY KEY(stuNo),--主键约束
   CONSTRAINT UQ_stuNo      UNIQUE (stuNo),--唯一约束
      CONSTRAINT CK_stuNo      CHECK(stuNo LIKE 'S253[0-9][0-9]'),--检查约束
      CONSTRAINT CK_stuSex     CHECK(stuSex='男' OR stuSex='女'),
      CONSTRAINT CK_stuAge     CHECK(stuAge BETWEEN 15 AND 40),
      CONSTRAINT CK_stuSeat    CHECK(stuSeat<=30),
      CONSTRAINT DF_stuAddress DEFAULT ('地址不详') FOR stuAddress --默认值设置
 
GO
--创建从表stuMarks--
CREATE TABLE stuMarks
(
 ExamNo CHAR(7) NOT NULL,
 stuNo NCHAR(6) NOT NULL,
 writtenExam SMALLINT NOT NULL,
 LabExam SMALLINT NOT NULL

相关文章:

  • 2021-12-04
  • 2021-12-01
  • 2021-11-21
  • 2021-12-12
  • 2021-11-27
  • 2021-09-10
  • 2022-12-23
猜你喜欢
  • 2021-12-07
  • 2021-09-30
  • 2021-06-21
  • 2022-01-08
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
相关资源
相似解决方案