sql server数据库练习

sql server 数据库创建: 

create database student
on
	primary(
	name=student_data,
	filename='D:\student_data.mdf',
	size=15mb,
	maxsize=30mb,
	filegrowth=20%)
log on
	(name=student,
	filename='D:\student_log.ldf',
	size=3mb,
	maxsize=10mb,
	filegrowth=1mb)

表的创建/数据的插入:

use student
create table Student(
	Sno char(6) primary key,
	Sname varchar(30) not null,
	Ssex char(2),
	Sage smallint,
	Sdept varchar(30) check(Sdept in('数学系','计算机系','英语系')),
	)
create table Course(
	Cno char(6) primary key,
	Cname varchar(30),
	Cpno smallint,
	Ccredit smallint default 3)
create table SG(
	Sno char(6),
	Cno char(6),
	Grade smallint,
	constraint c1 primary key(Sno,Cno),
	constraint c2 foreign key(Sno) 
		references Student(Sno),
	constraint c3 foreign key(Cno)
		references Course(Cno)
)
insert into Student
values('01','张三','男',20,'数学系')
insert into Student
values('02','小雪','女',21,'英语系')

insert into Course
values('001','英语',100,5)
insert into Course
values('002','高数',101,4)

insert into SG
values('01','001',88)
insert into SG
values('02','002',95)

查询:


SELECT STUDENT.SNO,SNAME,SSEX,GRADE
FROM STUDENT,SG
WHERE STUDENT.SNO=SG.SNO
ORDER BY SNAME ASC,GRADE DESC
GO

SELECT COURSE.CNO,MAX(GRADE),AVG(GRADE)
FROM STUDENT,SG,COURSE
WHERE STUDENT.SNO=SG.SNO AND COURSE.CNO=SG.CNO AND SG.CNO='001'
GROUP BY COURSE.CNO
GO

SELECT SDEPT
FROM STUDENT 
WHERE SNAME='张三'
GO

SELECT SNO,SNAME
FROM STUDENT
WHERE SNO=(SELECT SDEPT
			FROM STUDENT 
			WHERE SNAME='张三')
GO

SELECT STUDENT.*
FROM STUDENT,SG,COURSE
WHERE STUDENT.SNO=SG.SNO AND COURSE.CNO=SG.CNO AND COURSE.CNAME='英语'
GO

UPDATE STUDENT
SET SAGE=SAGE+2
WHERE SDEPT='英语系'
GO


DELETE
FROM SG
WHERE SG.SNO=(SELECT SNO
FROM STUDENT
WHERE SDEPT='英语系')
GO

CREATE VIEW STUDENTCOURSE(SNO,SNAME,CNO,CNAME,GRADE)AS
SELECT STUDENT.SNO,SNAME,COURSE.CNO,CNAME,GRADE
FROM STUDENT,SG,COURSE
WHERE STUDENT.SNO=SG.SNO AND COURSE.CNO=SG.CNO 
GO

猜你喜欢

转载自blog.csdn.net/qq_30787727/article/details/111407805