分类: WINDOWS
2011-08-17 10:15:52
Mssql基础练习1:
1、-判断是否存在Test数据库,有就删掉
2、-创建Test数据库,有主数据库,次数据库和多日志文件
3、-分离数据库
4、-附加数据库
5、-如果存在Test表,则删除表Test ;重新创建表Test,--添加数据
1、-判断是否存在Test数据库,有就删掉
USE master;
GO
IF EXISTS(SELECT name FROM SYSDATABASES WHERE name = 'Test')
BEGIN
DROP DATABASE Test;
END
GO
2、创建Test数据库,有主数据库,次数据库和多日志文件
CREATE DATABASE Test
ON PRIMARY
(
NAME = 'Test_dat',
FILENAME = 'E:\Test\Test_dat.mdf',
SIZE = 3MB,
MAXSIZE = 5MB,
filegrowth = 1%
),
(
NAME = 'Test_dat1',
FILENAME = 'E:\Test\Test_dat.ndf',
SIZE = 3MB,
MAXSIZE = 5MB,
filegrowth = 1%
)
LOG ON
(
NAME = 'Test_Log1',
FILENAME = 'E:\Test\Test_dat1.ldf',
SIZE = 2MB,
MAXSIZE = 5MB,
filegrowth = 1%
),
(
NAME = 'Test_Log2',
FILENAME = 'E:\Test\Test_dat2.ldf',
SIZE = 2MB,
MAXSIZE = 5MB,
filegrowth = 1%
);
GO
3、--分离数据库
EXEC sp_detach_db Test;
GO
4--附加数据库
CREATE DATABASE Test
ON
(
FILENAME = 'E:\Test\Test_dat.mdf'
) FOR ATTACH;
GO
USE Test;
GO
5、--如果存在Test表,则删除表Test ;重新创建表Test,--添加数据
--如果存在Test表,则删除表Test
IF EXISTS(SELECT id FROM sysobjects WHERE id = OBJECT_ID(N'Test'))
BEGIN
DROP TABLE Test;
END
GO
--创建表Test
CREATE TABLE Test
(
id INT IDENTITY(1,1) PRIMARY KEY,--id自动编号,并设为主键
[name] VARCHAR(20) NOT NULL,
*** CHAR(2) NOT NULL CHECK(*** IN ('男','女')), --约束,限制值为男女;
birthday DATETIME NOT NULL CHECK(birthday BETWEEN '1950-01-01' AND '1988-12-31'), --约束生日,限制出现的时间范围
phone CHAR(11) NOT NULL CHECK(LEN(phone)=11), --限制手机号码的长度必须为11;
remark VARCHAR(MAX) DEFAULT '请在这里填写备注', --设置默认值
tId INT NOT NULL FOREIGN KEY(tId) REFERENCES Test2(id), --添加外键,受Test2中的ID列约束
age AS DATEDIFF(yyyy,birthday,GETDATE())--计算列。
);
--添加数据
INSERT Test([name],***,birthday,phone,tId) VALUES('张三','男','1987-12-12','13818113246','1');
GO
SELECT * FROM Test;