SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句

附:(创建“商品管理数据库”的SQL语句)

--建立"商品管理数据库"数据库--
create database 商品管理数据库
on(name=‘商品管理数据库_m‘,
filename=‘D:\商品管理系统\商品管理数据库_m.mdf‘,
size=6mb,filegrowth=1mb,maxsize=unlimited)
log on(name=‘商品管理数据库_l‘,
filename=‘D:\商品管理系统\商品管理数据库_l.ldf‘,
size=1,filegrowth=10%,maxsize=3)
go

use 商品管理数据库
--建立"客户信息表"数据表--
create table 客户信息表
(客户编号 nchar(8)not null primary key,
客户姓名 nvarchar(5)not null,
联系电话 nvarchar(11)not null,
地址 nvarchar(30)not null,
邮箱 nvarchar(20)null)
--为"客户信息表"的"联系电话"设置唯一约束--
alter table 客户信息表
add constraint UN_客户信息表_联系电话
unique (联系电话)
--为"客户信息表"的"地址"设置默认约束--
alter table 客户信息表
add constraint DF_客户信息表_地址
default ‘辽宁沈阳‘for 地址
--为"客户信息表"的"邮箱"设置检查约束--
alter table 客户信息表
add constraint CK_客户信息表_邮箱
check (邮箱 like ‘_%@_%._%‘)

--建立"商品类型表"数据表--
create table 商品类型表
(商品类型编号 nchar(6)not null primary key,
商品类型名 nvarchar(10)not null)

--建立"商品信息表"数据表--
create table 商品信息表
(商品编号 nchar(8)not null primary key,
商品类型编号 nchar(6)not null,
商品名称 nvarchar(20)not null,
商品单位 nchar(2)not null,
产地 nvarchar(30)not null)
--为"商品信息表"的"商品类型编号"设置外键约束--
alter table 商品信息表
add constraint FK_商品类型表_商品信息表_商品类型编号
foreign key (商品类型编号)
references 商品类型表(商品类型编号)
--为"商品信息表"的"商品单位"设置默认约束--
alter table 商品信息表
add constraint DF_商品信息表_商品单位
default ‘个‘for 商品单位
--为"商品信息表"的"产地"设置默认约束--
alter table 商品信息表
add constraint DF_商品信息表_产地
default ‘辽宁沈阳‘for 产地

--建立"进货信息表"数据表--
create table 进货信息表
(进货编号 int not null primary key,
商品编号 nchar(8)not null,
进货单价 decimal(6,2)not null,
进货数量 int not null,
进货金额 decimal,
进货日期 date not null)
--为"进货信息表"的"商品编号"设置外键约束--
alter table 进货信息表
add constraint FK_商品信息表_进货信息表_商品编号
foreign key (商品编号)
references 商品信息表(商品编号)
--为"进货信息表"的"进货单价"设置检查约束--
alter table 进货信息表
add constraint CK_进货信息表_进货单价
check (进货单价>=0)
--为"进货信息表"的"进货数量"设置检查约束--
alter table 进货信息表
add constraint CK_进货信息表_进货数量
check (进货数量>0)
--为"进货信息表"的"进货金额"设置??约束--
--为"进货信息表"的"进货日期"设置默认约束--
alter table 进货信息表
add constraint DF_进货信息表_进货日期
default getdate()for 进货日期

--建立"销售信息表"数据表--
create table 销售信息表
(销售编号 int not null primary key,
商品编号 nchar(8)not null,
销售单价 decimal(6,2)not null,
销售数量 int not null,
销售金额 decimal,
销售日期 date not null,
客户编号 nchar(8)not null)
--为"销售信息表"的"商品编号"设置外键约束--
alter table 销售信息表
add constraint FK_商品信息表_销售信息表_商品编号
foreign key (商品编号)
references 商品信息表(商品编号)
--为"销售信息表"的"销售单价"设置检查约束--
alter table 销售信息表
add constraint CK_销售信息表_销售单价
check (销售单价>=0)
--为"销售信息表"的"销售数量"设置检查约束--
alter table 销售信息表
add constraint CK_销售信息表_销售数量
check (销售数量>0)
--为"销售信息表"的"销售金额"设置??约束--
--为"销售信息表"的"销售日期"设置默认约束--
alter table 销售信息表
add constraint DF_销售信息表_销售日期
default getdate()for 销售日期
--为"销售信息表"的"客户编号"设置外键约束--
alter table 销售信息表
add constraint FK_客户信息表_销售信息表_客户编号
foreign key (客户编号)
references 客户信息表(客户编号)

--建立"库存信息表"数据表--
create table 库存信息表
(库存编号 int not null,
商品编号 nchar(8)not null,
库存数量 int not null)
--为"库存信息表"的"商品编号"设置外键约束--
alter table 库存信息表
add constraint FK_商品信息表_库存信息表_商品编号
foreign key (商品编号)
references 商品信息表(商品编号)
--为"库存信息表"的"库存数量"设置检查约束--
alter table 库存信息表
add constraint CK_库存信息表_库存数量
check (库存数量>=0)

--添加表数据--
--添加"客户信息表"数据--
insert 客户信息表 values(‘20130001‘,‘张峰‘,‘13600001111‘,‘辽宁沈阳‘,‘[email protected]‘)
insert 客户信息表 values(‘20130002‘,‘赵小天‘,‘13700002222‘,‘辽宁大连‘,‘[email protected]‘)
insert 客户信息表 values(‘20130003‘,‘钱成‘,‘13800003333‘,‘辽宁锦州‘,‘[email protected]‘)
insert 客户信息表 values(‘20130004‘,‘孙飞‘,‘13900004444‘,‘辽宁沈阳‘,‘[email protected]‘)
insert 客户信息表 values(‘20130005‘,‘李小明‘,‘13100005555‘,‘辽宁盘锦‘,‘[email protected]‘)
insert 客户信息表 values(‘20130006‘,‘周笑‘,‘13300006666‘,‘辽宁大连‘,‘[email protected]‘)
--把查询到"客户信息表"的表数据生成(添加到)一张新数据表"客户信息表01"--
select * into 客户信息表01 from 客户信息表
--把查询到"客户信息表"的表数据添加到一张已存在的数据表"客户信息表01"中--
insert into 客户信息表01 select*from 客户信息表

--添加"商品类型表"数据--
insert 商品类型表 values(‘RZL001‘,‘日杂类‘)
insert 商品类型表 values(‘SPL001‘,‘饮料类‘)
insert 商品类型表 values(‘SPL002‘,‘食品类‘)
insert 商品类型表 values(‘WJL001‘,‘文具类‘)

--添加"商品信息表"数据--
insert 商品信息表 values(‘11110001‘,‘SPL001‘,‘可口可乐‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘11110002‘,‘SPL001‘,‘矿泉水‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘11110003‘,‘SPL001‘,‘雪花啤酒‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘11110004‘,‘SPL001‘,‘青岛啤酒‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘22220001‘,‘SPL002‘,‘德芙巧克力(牛奶)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘22220002‘,‘SPL002‘,‘士力架‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘22220003‘,‘SPL002‘,‘彩虹糖‘,‘盒‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330001‘,‘WJL001‘,‘中华铅笔‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330002‘,‘WJL001‘,‘大演算‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330003‘,‘WJL001‘,‘便签本‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330004‘,‘WJL001‘,‘曲别针‘,‘盒‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330005‘,‘WJL001‘,‘真彩签字笔(黑)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330006‘,‘WJL001‘,‘真彩签字笔(红)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330007‘,‘WJL001‘,‘鸵鸟钢笔水(深蓝)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘33330008‘,‘WJL001‘,‘鸵鸟钢笔水(纯蓝)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440001‘,‘RZL001‘,‘雕牌透明皂‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440002‘,‘RZL001‘,‘中华牙膏‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440003‘,‘RZL001‘,‘心相印纸巾(无味*10)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440004‘,‘RZL001‘,‘飘柔洗发(240ml)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440005‘,‘RZL001‘,‘枪手杀虫剂(200ml)‘,‘个‘,‘辽宁沈阳‘)
insert 商品信息表 values(‘44440006‘,‘RZL001‘,‘金鸡鞋油‘,‘个‘,‘辽宁沈阳‘)

--添加"进货信息表"数据--
insert 进货信息表 values(1,‘11110001‘,2.00,100,200.00,‘2012-11-01‘)
insert 进货信息表 values(2,‘11110002‘,1.00,200,200.00,‘2012-11-01‘)
insert 进货信息表 values(3,‘11110003‘,2.00,200,400.00,‘2012-11-01‘)
insert 进货信息表 values(4,‘22220001‘,6.00,10,60.00,‘2012-11-01‘)
insert 进货信息表 values(5,‘22220002‘,2.00,300,600.00,‘2012-11-01‘)
insert 进货信息表 values(6,‘22220003‘,2.00,150,30.00,‘2012-11-01‘)
insert 进货信息表 values(7,‘33330002‘,0.40,150,60.00,‘2012-11-01‘)
insert 进货信息表 values(8,‘22220001‘,6.00,10,60.00,‘2012-11-02‘)
insert 进货信息表 values(9,‘22220002‘,2.00,300,600.00,‘2012-11-02‘)
insert 进货信息表 values(10,‘22220003‘,2.00,150,300.00,‘2012-11-02‘)
insert 进货信息表 values(11,‘33330002‘,0.40,150,60.00,‘2012-11-02‘)
insert 进货信息表 values(12,‘22220001‘,6.00,100,600.00,‘2012-11-02‘)
insert 进货信息表 values(13,‘33330002‘,0.80,150,120.00,‘2012-11-02‘)
insert 进货信息表 values(14,‘33330001‘,0.90,200,180.00,‘2012-11-02‘)
insert 进货信息表 values(15,‘33330003‘,0.60,350,210.00,‘2012-11-02‘)
insert 进货信息表 values(16,‘33330004‘,2.00,150,300.00,‘2012-11-02‘)
insert 进货信息表 values(17,‘33330005‘,1.00,200,200.00,‘2012-11-02‘)
insert 进货信息表 values(18,‘33330006‘,1.00,110,110.00,‘2012-11-03‘)
insert 进货信息表 values(19,‘33330007‘,3.00,100,300.00,‘2012-11-03‘)
insert 进货信息表 values(20,‘33330007‘,3.00,150,450.00,‘2012-11-03‘)
insert 进货信息表 values(21,‘44440001‘,2.00,200,400.00,‘2012-11-03‘)
insert 进货信息表 values(22,‘44440002‘,3.00,100,300.00,‘2012-11-03‘)
insert 进货信息表 values(23,‘44440003‘,5.00,150,750.00,‘2012-11-03‘)
insert 进货信息表 values(24,‘44440004‘,23.00,100,2300.00,‘2012-11-04‘)
insert 进货信息表 values(25,‘44440005‘,16.00,100,1600.00,‘2012-11-04‘)
insert 进货信息表 values(26,‘44440006‘,2.00,200,400.00,‘2012-11-04‘)
insert 进货信息表 values(27,‘33330004‘,2.00,150,300.00,‘2012-11-04‘)
insert 进货信息表 values(28,‘22220001‘,6.00,100,600.00,‘2012-11-04‘)
insert 进货信息表 values(29,‘22220002‘,2.00,300,600.00,‘2012-11-04‘)
insert 进货信息表 values(30,‘22220003‘,2.00,150,300.00,‘2012-11-04‘)
insert 进货信息表 values(31,‘22220002‘,0.70,150,05.00,‘2012-11-04‘)

--添加"销售信息表"数据--
insert 销售信息表 values(1,‘11110001‘,3.00,50,150.00,‘2012-12-01‘,‘20130001‘)
insert 销售信息表 values(3,‘22220001‘,8.00,50,400.00,‘2012-12-01‘,‘20130003‘)
insert 销售信息表 values(4,‘22220002‘,3.50,50,175.00,‘2012-12-11‘,‘20130001‘)
insert 销售信息表 values(5,‘22220003‘,3.50,50,175.00,‘2012-12-11‘,‘20130002‘)
insert 销售信息表 values(6,‘11110003‘,2.50,40,100,‘2012-12-20‘,‘20130005‘)
insert 销售信息表 values(7,‘33330002‘,0.08,20,16.00,‘2012-12-20‘,‘20130001‘)

--添加"库存信息表"数据--
insert 库存信息表 values(1,‘11110001‘,50)
insert 库存信息表 values(2,‘11110002‘,200)
insert 库存信息表 values(3,‘11110003‘,160)
insert 库存信息表 values(4,‘22220001‘,170)
insert 库存信息表 values(5,‘22220002‘,850)
insert 库存信息表 values(6,‘22220003‘,400)
insert 库存信息表 values(7,‘33330001‘,200)
insert 库存信息表 values(8,‘33330002‘,580)
insert 库存信息表 values(9,‘33330003‘,350)
insert 库存信息表 values(10,‘33330004‘,300)
insert 库存信息表 values(11,‘33330005‘,200)
insert 库存信息表 values(12,‘33330006‘,110)
insert 库存信息表 values(13,‘33330007‘,250)
insert 库存信息表 values(14,‘44440001‘,200)
insert 库存信息表 values(15,‘44440002‘,100)
insert 库存信息表 values(16,‘44440003‘,150)
insert 库存信息表 values(17,‘44440004‘,100)
insert 库存信息表 values(18,‘44440005‘,100)
insert 库存信息表 values(19,‘44440006‘,200)

-----------------分割线-------------------------------------------------------------------------------
---函数
--在“商品管理数据库”中创建一个名为“f_proinfor”的内联表值函数,当输入商品编号时返回商品信息
use 商品管理数据库
go
create function f_proinfor (@prono nchar(8))
returns table
as
return
select*from 商品信息表
where 商品编号 =@prono
go

--在“商品管理数据库”中创建一个名为“f_prosale”多语句表值函数,当输入商品编号时返回该商品的销售信息
use 商品管理数据库
go
create function f_prosale(@prono nchar(8))
returns @prosale table
(
商品号 nchar(8),
商品名 nvarchar(20),
销售数量 int,
销售时间 date
)
as
begin
insert @prosale
select p.商品编号,商品名称,销售数量,销售日期
from 商品信息表 p,销售信息表 s
where p.商品编号=s.商品编号
and p.商品编号=@prono
return
end
go

--在“商品管理数据库”中创建一个名为“f_jhslh”标量函数,当输入商品编号时显示该商品的进货总数量
use 商品管理数据库
go
create function f_jhslh(@prono nchar(8))
returns int
begin
declare @jhalh int
select @jhalh=SUM(进货数量)
from 进货信息表
where 商品编号 =@prono
return @jhalh
end
go

---索引
--为 "商品管理数据库"中“进货信息表”的“进货日期”字段创建一个名为“IX_进货信息表_进货日期”的非聚集不唯一索引
create nonclustered
index IX_进货信息表_进货日期
on 进货信息表(进货日期)
--为 "商品管理数据库"中“商品信息表”的“商品类型名”字段创建一个名为“IX_商品类型表_商品类型名”的非聚集唯一索引
create unique nonclustered
index IX_商品类型表_商品类型名
on 商品类型表(商品类型名)

---视图
--在“商品管理数据库”中查询出2012年11月2日进货商品的信息,要求显示出商品编号、商品名称、进货数量和进货日期字段信息,将结果创建到名为“v_商品_进货”的视图中
use 商品管理数据库
go
create view vs_商品_进货成功
as
select 商品信息表.商品编号,商品名称,进货数量,进货日期,‘进货成功‘ ‘备注‘ from 商品信息表,进货信息表 where 商品信息表.商品编号=进货信息表.商品编号
and 进货日期=‘2012-11-02‘

--在“商品管理数据库”中查询出商品名称中带“酒”的商品的详细销售信息(显示商品编号、商品名称、销售单价、销售数量、销售金额、客户姓名和销售日期)
use 商品管理数据库
go
create view v_销售信息
as select 商品信息表.商品编号,商品名称,销售单价,销售数量,销售金额,客户姓名,销售日期
from 销售信息表
join 商品信息表 on 销售信息表.商品编号=商品信息表.商品编号
join 客户信息表 on 客户信息表.客户编号=销售信息表.客户编号
where 商品信息表.商品名称 like ‘%酒%‘

---存储过程
--创建名为“p_客户信息表_地址”的存储过程,用来实现在“商品管理数据库”的“客户信息表”中查询“辽宁沈阳”的客户信息
use 商品管理数据库
go
select*from 客户信息表 where 地址=‘辽宁沈阳‘ --创建前可以先查询一下要封装的记录

use 商品管理数据库
go
create proc p_客户信息表_地址 --创建存储过程
as
select*from 客户信息表 where 地址=‘辽宁沈阳‘

--创建名为“p_客户信息表_地址x”的存储过程,用来实现在“商品管理数据库”的“客户信息表”中查找指定地址的客户信息
use 商品管理数据库
go
create proc p_客户信息表_地址x
@address nvarchar(30)
as
select*from 客户信息表 where 地址=@address

--创建名为“p_客户信息表_姓名”的存储过程,将查询“客户信息表”中客户编号为20130001的客户信息姓名,并将客户姓名赋值给一个输出参数的查询代码封装到该存储过程中
create proc p_客户信息表_姓名
@name nvarchar(5) output
as
set @name=(select 客户姓名 from 客户信息表 where 客户编号=‘20130001‘)
--select @name=客户姓名 from 客户信息表 where 客户编号=‘20130001‘

--**带输入参数的存储过程、带输出参数的存储过程 的创建和执行的总例:(创建名为“p_客户信息表_编号_姓名”的存储过程,要求将查询“客户信息表”中指定客户编号的客户姓名显示出来。并执行存储过程查看结果)
create proc p_客户信息表_编号_姓名
@num nchar(8),@name nvarchar(5) output --定义了一个输入参数@num和一个输出参数@name,数据类型和取值范围与“客户信息表”中的“客户编号”字段和“客户姓名”字段一致
as
select @name=客户姓名 from 客户信息表 where 客户编号=@num

use 商品管理数据库
go
declare @num nchar(8),@name nvarchar(5) --定义了@num和@name两个用来与存储过程中的参数传递和接收值。
set @num=‘20130001‘ --使用set命令为变量@num赋值,以便将值传给输入参数@num。
exec p_客户信息表_编号_姓名 @num,@name output --exec执行存储过程时按顺序将两个变量带入到存储过程中。
print ‘客户编号为‘+@num+‘的客户的姓名为:‘+@name --print语句使用了字符串连接运算,输出详细结果。

---触发器
--(after类型触发器)(创建名为“t_客户信息表_电话”的触发器,当“商品管理数据库”中“客户信息表”的客户编号为20130001的客户联系电话修改为13600003333操作成功执行后,在结果打印一条“记录已修改!”的提示信息。
use 商品管理数据库
go
create trigger t_客户信息表_电话
on 客户信息表
after update --after类型触发器
as
print ‘记录已修改!‘
select*from 客户信息表

--(instead of类型触发器)(创建名为“t_客户信息表_电话no”的触发器,当“商品管理数据库”中“客户信息表”的客户编号为20130001的客户联系电话修改为13600004444时,不执行修改操作,并在结果打印一条“记录未修改!”的提示信息。
use 商品管理数据库
go
create trigger t_客户信息表_电话no
on 客户信息表
instead of update
as
print ‘记录未修改!‘
select*from 客户信息表

--(after类型触发器)(当“商品管理数据库”中有商品售出时,除了向“销售信息表”中添加销售记录之外,还应该为“库存信息表”中相应商品减掉与销售数量等值的库存数量。创建名为“t_销售表_库存表”的触发器。
use  商品管理数据库
go
create trigger t_销售表_库存表
on 销售信息表
after insert
as
update 库存信息表
set 库存数量=库存数量-(select 销售数量 from inserted)

创建“商品管理数据库”的SQL语句



附:(创建“学生选课数据库”的SQL语句)

附:(创建“学生选课数据库”的SQl语句)
--建立"学生选课数据库"数据库--
create database 学生选课数据库
on(name=‘学生选课_m‘,
filename=‘D:\学生选课系统\学生选课_m.mdf‘,
size=3mb,filegrowth=20%,maxsize=10mb),
(name=‘学生选课_n‘,
filename=‘D:\学生选课系统\学生选课_n.ndf‘,
size=2mb,filegrowth=1mb,maxsize=5mb)
log on(name=‘学生选课_l‘,
filename=‘D:\学生选课系统\学生选课_l.ldf‘,
size=1mb,filegrowth=1mb,maxsize=unlimited)
go

use 学生选课数据库
--建立"学生信息表"数据表--
create table 学生信息表
(学号 nchar(8)not null primary key,
姓名 nvarchar(5)not null,
性别 nchar(1)null,
专业班级 nvarchar(10)not null)
--为"学生信息表"的"性别"设置检查约束--
alter table 学生信息表
add constraint CK_学生信息表_性别
check (性别=‘男‘ or 性别=‘女‘)

--建立"课程信息表"数据表--
create table 课程信息表
(课程号 nchar(4)not null primary key,
课程名 nvarchar(10)not null,
学分 real not null)
--为"课程信息表"的"课程号"设置检查约束--
alter table 课程信息表
add constraint CK_课程信息表_课程号
check (课程号 like ‘z%‘ or 课程号 like ‘x%‘)
--为"课程信息表"的"学分"设置检查约束--
alter table 课程信息表
add constraint CK_课程信息表_学分
check (学分>=1)

--建立"选课信息表"数据表--
create table 选课信息表
(学号 nchar(8)not null,
课程号 nchar(4)not null,
成绩 real not null)
--为"选课信息表"的"学号"和"课程号"设置主键约束--
alter table 选课信息表
add constraint PK_选课信息表_课程号
primary key(学号,课程号)
--为"选课信息表"的"学号"设置外键约束--
alter table 选课信息表
add constraint FK_学生信息表_选课信息表_学号
foreign key(学号)
references 学生信息表(学号)
--为"选课信息表"的"课程号"设置外键约束--
alter table 选课信息表
add constraint FK_课程信息表_选课信息表_课程号
foreign key(课程号)
references 课程信息表(课程号)
--为"选课信息表"的"成绩"设置检查约束--
alter table 选课信息表
add constraint CK_选课信息表_成绩
check (成绩>=0 and 成绩<=100)

--添加表数据--
--添加"学生信息表"数据--
insert 学生信息表 values(‘11010101‘,‘李菲‘,‘女‘,‘11摄影01班‘)
insert 学生信息表 values(‘11010102‘,‘林斌‘,‘男‘,‘11摄影01班‘)
insert 学生信息表 values(‘11010103‘,‘张晶晶‘,‘女‘,‘11摄影01班‘)
insert 学生信息表 values(‘11010104‘,‘曹业成‘,‘男‘,‘11摄影01班‘)
insert 学生信息表 values(‘11010105‘,‘梁良‘,‘男‘,‘11摄影01班‘)
insert 学生信息表 values(‘11010201‘,‘赵晓峰‘,‘男‘,‘11摄影02班‘)
insert 学生信息表 values(‘11010202‘,‘韩霞‘,‘女‘,‘11摄影02班‘)
insert 学生信息表 values(‘11010203‘,‘杜晓静‘,‘女‘,‘11摄影02班‘)
insert 学生信息表 values(‘11010204‘,‘罗飞‘,‘男‘,‘11摄影02班‘)
insert 学生信息表 values(‘11010205‘,‘李林‘,‘女‘,‘11摄影02班‘)
insert 学生信息表 values(‘11020101‘,‘钱伟‘,‘男‘,‘11动漫01班‘)
insert 学生信息表 values(‘11020102‘,‘李月‘,‘女‘,‘11动漫01班‘)
insert 学生信息表 values(‘11020103‘,‘杨华‘,‘男‘,‘11动漫01班‘)
insert 学生信息表 values(‘11020104‘,‘朱莉‘,‘女‘,‘11动漫01班‘)
insert 学生信息表 values(‘11020105‘,‘赵玉平‘,‘男‘,‘11动漫01班‘)
insert 学生信息表 values(‘11020201‘,‘杨小平‘,‘女‘,‘11动漫02班‘)
insert 学生信息表 values(‘11020202‘,‘李辉‘,‘男‘,‘11动漫02班‘)
insert 学生信息表 values(‘11020203‘,‘张梅‘,‘女‘,‘11动漫02班‘)
insert 学生信息表 values(‘11020204‘,‘杨斌‘,‘男‘,‘11动漫02班‘)
insert 学生信息表 values(‘12030101‘,‘王野‘,‘男‘,‘12软件01班‘)
insert 学生信息表 values(‘12030102‘,‘吴山‘,‘男‘,‘12软件01班‘)
insert 学生信息表 values(‘12030103‘,‘马振峰‘,‘男‘,‘12软件01班‘)
insert 学生信息表 values(‘12030104‘,‘韩文‘,‘女‘,‘12软件01班‘)
insert 学生信息表 values(‘12040201‘,‘李小明‘,‘男‘,‘12网技02班‘)
insert 学生信息表 values(‘12040202‘,‘张华‘,‘女‘,‘12网技02班‘)
insert 学生信息表 values(‘12040203‘,‘罗远新‘,‘男‘,‘12网技02班‘)
insert 学生信息表 values(‘12040204‘,‘高胜‘,‘男‘,‘12网技02班‘)

--添加"课程信息表"数据--
insert 课程信息表 values(‘x001‘,‘网站建设‘,2)
insert 课程信息表 values(‘x002‘,‘影视欣赏‘,2)
insert 课程信息表 values(‘x003‘,‘计算机前沿动态‘,2)
insert 课程信息表 values(‘z001‘,‘计算机应用基础‘,2)
insert 课程信息表 values(‘z002‘,‘C语言程序设计‘,3)
insert 课程信息表 values(‘z003‘,‘网络基础‘,2)
insert 课程信息表 values(‘z004‘,‘综合布线‘,3)
insert 课程信息表 values(‘z005‘,‘摄影技术‘,2)
insert 课程信息表 values(‘0z006‘,‘Photoshop‘,2)
insert 课程信息表 values(‘z007‘,‘Java程序设计‘,4)

--添加"选课信息表"数据--
insert 选课信息表 values(‘11010101‘,‘x001‘,87)
insert 选课信息表 values(‘11010101‘,‘x002‘,78)
insert 选课信息表 values(‘11010101‘,‘z002‘,89)
insert 选课信息表 values(‘11010203‘,‘x001‘,88)
insert 选课信息表 values(‘11010203‘,‘z005‘,77)
insert 选课信息表 values(‘11010203‘,‘z006‘,87)
insert 选课信息表 values(‘11020105‘,‘x003‘,85)
insert 选课信息表 values(‘11020105‘,‘z001‘,80)
insert 选课信息表 values(‘11020105‘,‘z006‘,90)
insert 选课信息表 values(‘12030103‘,‘x002‘,80)
insert 选课信息表 values(‘12030103‘,‘z002‘,84)
insert 选课信息表 values(‘12030103‘,‘z007‘,72)
insert 选课信息表 values(‘12040202‘,‘x001‘,84)
insert 选课信息表 values(‘12040202‘,‘z003‘,84)
insert 选课信息表 values(‘12040202‘,‘z004‘,77)

----------------------分割线------------------------------------------------------------------------

--从"学生信息表"中查询"11动漫01班"学生信息,并将其添加至一张名为"动漫专业11级"的新数据表中--
select * into 动漫专业11级 from 学生信息表 where 专业班级=‘11动漫01班‘
--从"学生信息表"中查询"11动漫02班"学生信息,并将其添加至数据表"动漫专业11级"中--
insert into 动漫专业11级 select * from 学生信息表 where 专业班级=‘11动漫02班‘

创建“学生选课数据库”的SQL语句



SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句

时间: 2024-10-01 07:20:23

SQL Server 【附】创建"商品管理数据库"、"学生选课数据库"的SQL语句的相关文章

SQL Server 2012实施与管理实战指南(笔记)——Ch5启动SQL Server服务和数据库

5.启动SQL Server服务和数据库 在数据库和服务启动过程中,经常会出现的问题: 1.SQL Server实例无法正常启动 2.系统数据库无法正常启动 3.网络配置失败 4.用户数据库无法启动 5.集群环境下SQL Server资源无法保持在线 目录 5.启动SQL Server服务和数据库... 1 5.1 SQL Server服务启动步骤... 1 5.1.1 从注册表中读取SQL Server启动信息... 1 5.1.2 检查硬件,配置内存和CPU.. 2 5.1.3 数据库启动.

SQL Server 2008创建数据库

1.数据.数据库.数据管理系统基本概念: 数据:人类有用信息的符号化表示. 数据库:按照数据结构来组织.存储和管理数据的一个仓库. 数据库管理系统(DBMS):可维护.存储并为应用系统提供数据的软件系统(软件+数据库+数据管理员). 可以客观描述的事物被称为"实体",不同的数据体现了不同的实体.数据每一行(Row)对应一个实体,被称为"记录(record)",每个输入项称为"列"(Column),如编号,姓名,学号等.数据"表"

在SQL Server中创建用户角色及授权

参考文献 http://database.51cto.com/art/201009/224075.htm 正文 要想成功访问 SQL Server 数据库中的数据, 我们需要两个方面的授权: 获得准许连接 SQL Server 服务器的权利: 获得访问特定数据库中数据的权利(select, update, delete, create table ...). 假设,我们准备建立一个 dba 数据库帐户,用来管理数据库 mydb. 1. 首先在 SQL Server 服务器级别,创建登陆帐户(cr

SQL Server 2012笔记分享-38:了解系统数据库

master 数据库 记录 SQL Server 实例的所有系统级信息. master 数据库记录 SQL Server 系统的所有系统级信息.这包括实例范围的元数据(例如登录帐户).端点.链接服务器和系统配置设置.此外,master 数据库还记录了所有其他数据库的存在.数据库文件的位置以及 SQL Server 的初始化信息.因此,如果 master 数据库不可用,则 SQL Server 无法启动.在 SQL Server 中,系统对象不再存储在 master 数据库中,而是存储在 Reso

SQL Server 2012笔记分享-8:理解包含数据库

包含数据库的四大核心特点 独立于其他数据库以及独立于承载数据库的 SQL Server 实例的一种数据库. 很多用于描述数据库的元数据都在该数据库中维护. 使用相同的排序规则定义所有元数据. 数据库可执行用户身份验证,因此减少了对 SQL Server 实例的登录名的数据库依赖关系. 包含数据库解决的问题 在你将SQL Server 2012包含数据库隔离之后,你就可以轻易将其从一个SQL Server实例迁移至另一个SQL Server实例,而不必迁移一组SQL Server登录.此包含数据库

在sql server中创建一个只读login

在SQL Server中创建一个Login,并为这个login授予只读的权限 --create Login Name create login [domain\login] from windows; --create --UserName Create User DWReadOnly for login [domain\login] --Grant readonly ALTER ROLE [db_datareader] add MEMBER DWReadOnly Appendix 服务器角色参

SQL Server 2012实施与管理实战指南(笔记)——Ch3Alwayson可用组

3.AlwaysOn可用组 Alwayson支持的,是一个可用性组,每个可用性组是包含了多个用户数据库的容器,可用性组内的数据库可以作为一个整体进行故障转移. AlwaysOn关键特性: 一.类似集群的特性 1.多个数据库可以一起迁移 2.提供一个虚拟服务器名,这个虚拟服务器名始终是当前的primary. 3.可以有自动切换,手动切换和强制切换 4.一个primary,最多4个secondary(sql server 2014增加到了8个) 5.Dashborad可以监视alwayson运行状况

SQL SERVER 2008 服务器登录名、角色,数据库用户、角色、架构知识点总结

SQL SERVER 2008 服务器登录名.角色,数据库用户.角色.架构的关系可以用下面一张图表示: 用例过程如下: 新建服务器登录名: 登录名角色选定: 新建数据库DB1: 然后新建数据库架构Schema1 再新建数据库用户名  User1 服务器登录名属于某组服务器角色:服务器登录名需要于数据库的用户映射后才拥有操作数据库的权限数据库用户属于某组数据库角色以获取操作数据库的权限数据库角色拥有对应的数据库架构,数据库用户可以通过角色直接拥有架构 服务器角色 public sysadmin--

SQL Server中事务日志管理的步骤,第5级:完全恢复模式管理日志

SQL Server中事务日志管理的步骤,第5级:完全恢复模式管理日志 作者:Tony Davis,2012/01/27 系列 本文是进阶系列的一部分:SQL Server中事务日志管理的步骤 当事情进展顺利时,无需特别注意事务日志的作用或工作方式.您只需要确信每个数据库都有正确的备份机制.当出现问题时,了解事务日志对于采取纠正措施很重要,特别是在需要紧急恢复数据库的时间点时!Tony Davis给出了每个DBA都应该知道的正确的细节级别. 在此级别中,我们将回顾在完全恢复模式下工作时进行日志备