快速业务通道

学习SQL2005当中的例子

作者 佚名技术 来源 数据库编程 浏览 发布时间 2012-03-22
er\mssql.1\mssql\data\archlog2.ldf'',
SIZE = 100MB,
MAXSIZE = 200,
FILEGROWTH = 20)
GO
 
/*例4-5 在磁盘上创建了一个备份设备。*/
/*程序清单如下:*/
USE [master]
GO
EXEC master.dbo.sp_addumpdevice
       @devtype = N''disk'',
       @logicalname = N''test_backup'',
       @physicalname = N''C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Backup\1.bak''
GO
/*例5-4 在执行创建产品信息表的操作时,指定产品编号为主键值,
       并且创建一个聚簇索引*/
/*程序清单如下:*/
create table products(
id char(10) NOT NULL,
nname char(20) NOT NULL,
price money default 0.01,
quantity smallint NULL,
constraint pk_id primary key clustered (id)
)
 
/*例5-5 建立一个SC表,定义SNO,CNO共同组成SC的主键*/
/*程序清单如下:*/
CREATE TABLE SC
(SNO CHAR(5) NOT NULL,
CNO CHAR(5) NOT NULL,
SCORE NUMERIC(3),
CONSTRAINT SC_PRIM PRIMARY KEY(SNO,CNO))
 
/*例5-6 创建一个学生信息表,其中name字段具有惟一性*/
/*程序清单如下:*/
Create table student(
id char(8),
nname char(10),
sex char(2),
 constraint pk_student_id primary key (id),
 constraint uk_identity unique (nname)
)
 
/*例5-7 创建了一个学生信息表,其中输入性别字段值时,只能接受“F”或者“M”,
而不能接受其他数据,并且为phonenum字段创建检查约束,
限制只能输入类似01082798123之类的数据,而不能随意输入其他数据。*/
/*程序清单如下:*/
 
USE db
create table student(
id char(8),
name char(8),
sex  char(2),
phonenum int,
 constraint chk_sex check(sex in (''F'',''M'')),
 constraint chk_phonenum check
(phonenum like ''(010)[1-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9] [0-9]''))
 
/*例5-8 建立一个SC表,定义SCORE 的取值范围为0到100之间。*/
/*程序清单如下:*/
 
CREATE TABLE SC
(SNO CHAR(5),
CNO CHAR(5),
SCORE NUMERIC(5,1) CONSTRAINT SCORE_CHK CHECK(SCORE>=0 AND SCORE <=100))
/*例5-11 建立一个SC表,定义SNO,CNO为SC的外部键。*/
/*程序清单如下:*/
CREATE TABLE SC
(SNO CHAR(10) NOT NULL
 CONSTRAINT S_FORE FOREIGN KEY REFERENCES S(SNO),
CNO CHAR(10) NOT NULL
 CONSTRAINT C_FORE FOREIGN KEY REFERENCES C(CNO),
SCORE NUMERIC(3),
CONSTRAINT S_C_PRIM PRIMARY KEY (SNO,CNO))
 
/*例5-14 创建一个雇员信息表,然后在表中增加一个salary字段,删除表中的age字段,
并且修改memo字段的数据类型。*/
/*SQL语句的程序清单如下:*/
 
Use db
create table employees(
id char(8) primary key,
name char(20) not null,
department char(20) null,
memo char(30) null,
age int null,
)
alter table employees
 add salary int null
go
 alter table employees
drop column age
go
alter table employees
alter column memo varchar(200) null
 
/*例6-27 在分组查询中使用HAVING条件,查询平均成绩大于85的学生学号及平均成绩。*/
/*程序清单如下:*/
SELECT sno, AVG(score) AS ''AverageScore''
FROM sc
GROUP BY sno
HAVING AVG(score) >85
GO
 
/*例7-1 选择表s和sc中的部分字段和记录来创建一个视图,并且限制表s中的记录只能是计算机系的记录集合,视图定义为view_s*/
/*程序清单如下*/
create view view_s
as
select s.sname,s.age,s.sex,
sc.cno,sc.score
from
s,sc
where s.sno=sc.sno and s.dept=''计算机''
 

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号