sql语言学习笔记

小鸡
阅读680 喜欢3 sql 更新2018-10-8

创建数据库

主要是今天第一次上了数据库实验课
就随便记记
新手上路,见笑了

以下是创建数据库userdb1的SQL语句,

create database userdb1
on
(name=userdb4_data,--数据文件的逻辑名称,注意不能与日志逻辑同名
filename=g:xygluserdb4.mdf ,--物理名称,注意路径必须存在
size=5,--数据初始长度为5M
maxsize=10,--最大长度为10M
filegrowth=1)--数据文件每次增长1M
log on
( name=userdb4_log,
filename=g:xygluserdb4.ldf ,
size=2 ,
maxsize=5 ,
filegrowth=1)

运行上诉语句建立数据库userdb1

建立学生选课和老师与课程之间的数据库

代码注释有点乱码,不影响哈

use EDUC1

课程的表

CREATE TABLE course
(
cno char(10) PRIMARY KEY, --主键
spno char (8), --
cname char(20) NOT NULL, --¿ÎÃû
ctno tinyint, --ÀàÐͱàºÅ
experiment tinyint, --¿Î³ÌʱÊý
lecture tinyint, --ÊÚ¿Îѧʱ
semester tinyint, --¿ª¿ÎѧÆÚ
credit tinyint, --¿Î³Ìѧ·Ö
)

老师与课程的表
CREATE TABLE teacher_course
(
tcid smallint PRIMARY KEY,--ÉϿαàºÅ
tno char(8), --½Ìʦ±àºÅ£¨Íâ¼ü£©
spno char (8), --רҵ´úÂ루Íâ¼ü£©
classno char(4), --°à¼¶ºÅ
cno char (10), --¿Î³Ì±àºÅ£¨Íâ¼ü£©
semester char(6), --ѧÆÚ
schoolyear char(10), --ѧÄê
classtime varchar (40), --ÉÏ¿Îʱ¼ä
classroom varchar (40), --ÉϿεصã
weektime tinyint , --ÿÖÜ¿ÎʱÊý
)

学生与课程的表
CREATE TABLE student_course
(
sno char(8) NOT NULL , -- ѧÉúѧºÅ
tcid smallint NOT NULL, --ÉϿαàºÅ
score tinyint , --ѧÉú³É¼¨
CONSTRAINT PK_Name PRIMARY KEY (sno,tcid),
)


老师的表

CREATE TABLE teacher
(
tno char(8) PRIMARY KEY, --½Ìʦ±àºÅ
tname char(8) NOT NULL, --½ÌʦÐÕÃû
sex char(2), --½ÌʦÐÔ±ð
birthday smalldatetime, --½Ìʦ³öÉúÈÕÆÚ
dno char(6), --½ÌʦËùÔÚԺϵ
pno tinyint, --½ÌʦְÎñ»òÖ°³Æ±àºÅ
home varchar(40) , --½Ìʦ¼Òͥסַ
zipcode char(6) , --ÓÊÕþ±àÂë
tel varchar(40) , --ÁªÏµµç»°
email varchar(40), --µç×ÓÓʼþ

)
  1. 根据如上表结构用向导创建各表。
  2. 用企业管理器删除所建立的表Student_course,Student和Course
  3. 在查询分析器中用sql语句删除表Tearch_course和表Teacher
  4. 根据如上表结构用SQL语句创建各表。
  5. 将以上创建表的SQL命令以 .SQL文件的形式保存在磁盘上

删除表

use EDUC1
drop table teacher
drop table teacher_course

修改表中的列

use EDUC1
alter table student
drop constraint PK_student
--因为sno是主键,所有不能直接修改

alter table student
alter column sno varchar(20) not null
alter table student
add constraint PK_student primary key (sno)

添加列的限制

use EDUC1
alter table course
ADD
CONSTRAINT year CHECK(year BETWEEN 2004 AND 2008)

删除列

use EDUC1
alter table course
drop constraint year
alter table course
drop column year

今天就学了这么多,告辞!!!

这周又要开始完成每周考研周计划

考研周计划

  1. 张宇高数第三讲
  2. 王道数据结构把第四章树看完
  3. 王道第三章看完
  4. 英语听力*3 + 阅读*3 + 作文 * 1

任务还是很重的( ̄▽ ̄)""