1、创建一个数据库StudentManage, 初始化大小10M,不足以1M每次增长
create database StudentManage
 
on
(
name = 'StudentManage_data',
filename = 'D:\StudentManage_data.mdf',
size = 10mb,
maxsize = 100mb,
filegrowth = 15%
)
 
log on
(
name = 'StudentManage_log',
filename = 'D:\StudentManage_log.ldf',
size = 2mb,
filegrowth = 1mb
)
 
 
2、其中表结构包括
   学生信息表:StudentInfo
              ( 学生ID(主键),
                所在班级ID(外键约束),
                学生姓名(非空约束),
                性别(检查约束(男,女)),
                年龄(检查约束(6-30)), 
                身份证号(检查约束), 
                家庭地址(默认值‘地址不详’))
create table StudentInfo
(
StuId varchar(10) primary key,
ClassId varchar(8) foreign key references ClassInfo(ClassId),
StuName varchar(6) not null,
Sex varchar(4) default '男' check(Sex='男'or Sex='女'),
Age smallint check(Age>0 and Age<36),
IdNum char(18) check(IdNum like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9,X]'),
StuAddress nvarchar(50) default '地址不详',
)
 
   教师信息表:TeacherInfo
               (教师ID(主键),
                教师姓名(非空约束),
                性别(检查约束(男,女)),
                年龄(检查约束(25-60)), 
                身份证号(检查约束), 
                教学方向
                家庭地址(默认值‘地址不详’))
create table TeacherInfo
(
TecId varchar(10) primary key,
TecName varchar(8) not null,
Sex varchar(4) default '男' check(Sex='男' or Sex='女'),
Age smallint check(Age>25 and Age<60),
IdNum char(18) check(IdNum like '[0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9][0-9,X]'),
TecWhat nvarchar(8) not null,
TecAddress nvarchar(50) default '地址不详',
)
 
   班级信息表:ClassInfo
               (班级ID(主键),
                班级名称(非空约束),
                班级人数(15-60),
                入校时间,
                毕业时间
               )
use StudentManage
 
create table ClassInfo
(
ClassId varchar(8) primary key,
ClassName varchar(8) not null,
CstuNum int,
InDate date,
GraduDate date
)
   课程信息表:CourseInfo
               (课程ID(主键),
                课程名称(非空约束),
                )
 
create table CourseInfo
(
CourId varchar(8) primary key,
CourName varchar(8) not null
)
   考分信息表:Scores
                (ID(标识列,(1, 1)),
                 学生ID(外键约束),
                 教师ID(外键约束),
                 考试批次,--第一次考还是补考?
                 分数(0-100)            
                )
 
create table ScoresInfo
(
ScoreId int primary key identity(1,1),
StuId varchar(10) foreign key references StudentInfo(StuId),
TecId varchar(10) foreign key references TeacherInfo(TecId),
PiCi varchar(8),
Score smallint check(Score>=0 and Score <=100)
)
 
3、以上的每个表至少加入3条以上的记录
use StudentManage
--向班级表插入三条数据
insert into ClassInfo
values('101','计算机',50,'2010-09-09','2014-10-10')
 
insert into ClassInfo
values('102','嵌入式',50,'2010-09-09','2014-10-10')
 
insert into ClassInfo
values('103','网络安全',50,'2010-09-09','2014-10-10')
 
--向学生信息表里插入数据
insert into StudentInfo
values('144712190','101','武索普','男',18,'411481199012102908',default)
 
insert into StudentInfo
values('144712221','102','路飞','男',18,'211481199012102593',default)
 
insert into StudentInfo
values('144712321','103','罗宾','女',18,'511481199012102908',default)
 
--向教师信息表里插入数据
insert into TeacherInfo
values('541001','白胡子','男',50,'123456789098765432','震震大地',default)
 
insert into TeacherInfo
values('541002','罗利','男',50,'323456789098765432','催眠掌',default)
 
insert into TeacherInfo
values('541003','帝喾克','女',26,'523456789098765432','媚眼',default)
 
--向课程信息表里插入数据
insert into CourseInfo
values('101','气武镜')
 
insert into CourseInfo
values('102','玄武镜')
 
insert into CourseInfo
values('103','灵武镜')
 
insert into CourseInfo
values('104','天武镜')
 
--向成绩表里插入数据
insert into ScoresInfo
values('144712190','541001','第一批',100)
 
insert into ScoresInfo
values('144712221','541002','第一批',100)
 
insert into ScoresInfo
values('144712321','541003','第一批',100)

sql语句小练习二的更多相关文章

  1. 常用sql语句总结(二)(更新数据,序列,创建数据表,约束,注释)

    常用sql语句总结(二)(更新数据,序列,创建数据表,约束,注释) 一. 增 INSERT INTO 数据表(字段,字段,-) VALUES(值,值-); INSERT INTO emp(empno, ...

  2. sql语句小记录

    测试过程中,需要去数据库中查询一些结果,比如验证码 常用的是查询 更新比较少用 删除一般不用 sql查询语句的嵌套用法,比较实用 比如in的用法:第一种:查询多个值时 SELECT "栏位名 ...

  3. SQL语句小总结

    无论是面试过程中,还是未来工作中,SQL都是一定会考到和用到的.所以,在此对之前看过的一些SQL知识点进行一下总结和记录,算是起到一个笔记本的作用.没有深入学习过SQL的和对SQL印象不太深的朋友可以 ...

  4. SQL语句汇总(二)——数据修改、数据查询

    SQL语句第二篇,不说废话直接开始吧. 首先创建一张表如下,创建表的方法在上篇介绍过了,这里就不再赘述. 添加新数据: INSERT INTO <表名> (<列名列表>) VA ...

  5. SQL语句学习(二)

    为一张表添加外键: 这里我们希望再建一张订单的表为t_order,包含order_id,customer_id和price: ) NOT NULL auto_increment PRIMARY KEY ...

  6. mysql使用基础 sql语句与数据完整性(二)

    二.DML:Data Manipulation Language 数据操作语言 作用:操作表中的数据的. 关键:INSERT UPDATE DELETE 注意:日期或字符串.字符要使用单引号引起来. ...

  7. SQL 语句优化—— (二) 索引的利用

    索引是与表或视图关联的磁盘上结构,可以加快从表或视图中检索行的速度.索引包含由表或视图中的一列或多列生成的键.与书中的索引一样,数据库中的索引使您可以快速找到表或索引视图中的特定信息.索引包含从表或视 ...

  8. sql语句小练习一

    create database aaa go use aaa go create table student(    sno varchar(3), sname varchar(4) not null ...

  9. SQL语句(十二)分组查询

    (十二)分组查询 将数据表中的数据按某种条件分成组,按组显示统计信息 查询各班学生的最大年龄.最小年龄.平均年龄和人数 分组 SELECT <字段名表1> FROM <表名> ...

随机推荐

  1. JVM 类型的生命周期学习

    Java虚拟机通过装载.连接和初始化一个JAVA类型,使该类型可以被正在运行的JAVA程序所使用,其中,装载就是把二进制形式的JAVA类型读入JAVA虚拟机中:而连接就是把这种读入虚拟机的二进制形式的 ...

  2. PLSQL_基础系列08_操作符标LPAD / TRUNC / DECODE / TRIM / INSTR(案例)

    2014-12-09 Created By BaoXinjian

  3. hdu 5698 瞬间移动(排列组合)

    这题刚看完,想了想,没思路,就题解了 = = 但不得不说,找到这个题解真的很强大,链接:http://blog.csdn.net/qwb492859377/article/details/514781 ...

  4. [MySQL] 常用SQL的优化--18.4

    这里介绍下,Insert.Group By等SQL语句的优化方法: 1.大批量数据插入 当load命令导入数据的时候,可以进行适当的设置提高导入速度. 1.1 对于MyISAM表,可以先禁用非唯一索引 ...

  5. i++与++i 辨析

    i++:先赋值在自加: ++i:先自加在赋值: 备注:在赋值运算中有区别,单独使用没有区别 ( 例子1:单独使用 for(int i=0;i<10;i++){ } for(int i=0;i&l ...

  6. JAVA 边界布局管理器

    //边界布局管理器 import java.awt.*; import javax.swing.*; public class Jiemian1 extends JFrame{ //定义组件 JBut ...

  7. CSS如何实现数字分页效果

    代码实例如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  8. SQL Server 2005中的分区表(四):删除(合并)一个分区(转)

    在前面我们介绍过如何创建和使用一个分区表,并举了一个例子,将不 同年份的数据放在不同的物理分区表里.具体的分区方式为: 第1个小表:2010-1-1以前的数据(不包含2010-1-1). 第2个小表: ...

  9. [ActionScript 3.0] AS3 Socket安全沙箱策略文件

    当与一个主机建立一个Socket连接时,Flash Player要遵守如下安全沙箱规则: 1.Flash的.swf文件和主机必须严格的在同一个域名,只有这样才可以成功建立连接: 2.一个从网上发布的. ...

  10. jquery ajax事件

    $.ajax({ type : 'POST', url : 'user.php', data : $('form').serialize(), success : function (response ...