diff --git "a/\346\235\250\345\207\214\347\277\224 22/.keep" "b/\346\235\250\345\207\214\347\277\224 22/.keep" new file mode 100644 index 0000000000000000000000000000000000000000..e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 diff --git "a/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\344\275\234\344\270\232/student.sql" "b/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\344\275\234\344\270\232/student.sql" new file mode 100644 index 0000000000000000000000000000000000000000..a8b86a88024d8e3bc04f645a0e5428eadac34e05 --- /dev/null +++ "b/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\344\275\234\344\270\232/student.sql" @@ -0,0 +1,54 @@ +CREATE DATABASE DBTEST +create table sectionInfo( + sectionID int primary key identity(1,1), + sectionName varchar(10) NOT NULL + ); + + create table userInfo( + userNo int primary key identity(1,1) NOT NULL, + userName varchar(10) NOT NULL UNIQUE, + userSex varchar(2) not null default('男') check(userSex='男' or userSex='女'), + userAge INT NOT NULL CHECK(userAge>=1 AND userAge<=100), + userAddress VARCHAR(50) DEFAULT('江西') NOT NULL, + userSection INT + ); + Alter table userInfo add constraint FK_StuInfo_ClassId foreign key(userSection) references sectionInfo(sectionID) + CREATE TABLE workInfo( + workId INT primary key identity(1,1), + userId INT, + workTime DATETIME NOT NULL, + workDescription varchar(40) CHECK(workDescription='迟到' OR workDescription='早退' OR workDescription='旷工'OR workDescription='病假'OR workDescription='事假') + ); + Alter table workInfo add constraint FK_workInfo_ClassId foreign key(userId) references userInfo(userNo); + insert into sectionInfo VALUES('运行部'); + INSERT INTO userInfo + ( + userName, + userSex, + userAge, + userAddress, + userSection + ) + VALUES + ( '张三', -- userName - varchar(10) + '男', -- userSex - varchar(2) + 18, -- userAge - int + '零零', -- userAddress - varchar(50) + 2 -- userSection - int + ); + INSERT INTO workInfo + ( + userId, + workTime, + workDescription + ) + VALUES + ( 1, -- userId - int + GETDATE(), -- workTime - datetime + '迟到' -- workDescription - varchar(40) + ) + + SELECT * FROM sectionInfo; + SELECT * FROM userInfo; + SELECT * FROM workInfo; +\ No newline at end of file \ No newline at end of file diff --git "a/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\347\254\224\350\256\260/2020-9-16-\345\273\272\345\272\223\345\273\272\350\241\250.md" "b/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\347\254\224\350\256\260/2020-9-16-\345\273\272\345\272\223\345\273\272\350\241\250.md" new file mode 100644 index 0000000000000000000000000000000000000000..6afe816a8b450557cba194b44f72afb09848fae9 --- /dev/null +++ "b/\346\235\250\345\207\214\347\277\224 22/\346\235\250\345\207\214\347\277\224 22/\347\254\224\350\256\260/2020-9-16-\345\273\272\345\272\223\345\273\272\350\241\250.md" @@ -0,0 +1,54 @@ +--关系型数据库:SQL server, Mysql, Oracle +--创建数据库:create database 数据库名 +--database:数据库 + +if exists (select * from sys.databases where name='DBTEST') + drop database DBTEST + + create database DBTEST + + --使用数据库 + use dbtest + + --创建班级表 + create table ClassInfo( + ClassId int primary key identity(1,1), + ClassName varchar(20) + ); + + --插入数据: insert [into] 表名(字段名) values(值) + insert into ClassInfo( ClassName) values('软件1班'); + + insert ClassInfo values('软件2班') + + select * from ClassInfo + + --创建数据表 + create table StuInfo( + stuId int primary key identity(1001,1), --学生ID + --添加一个检查约束,判断用户插入/新增的数据,性别字段是不是男或者女 + --default:默认约束 + --check + stugender varchar(2) not null default('男') check(stugender='男' or stugender='女'), --学生性别 + stuphone char(11) check(len(stuphone)=11) unique, + --创建班级外键 + --ClassID int references ClassInfo(ClassID) + ClassID int + + ); + + + --增加外键 + --修改表结构 表名 add constraint 约束名 foreign key(要引用的字段) references 主键表(字段) + Alter table StuInfo add constraint FK_StuInfo_ClassId foreign key(ClassID) references ClassInfo(ClassID) + + + --新增姓名列 + alter table StuInfo add stuName varchar(20) + + + + --如果没给出列名,默认是按照顺序一个个添加 + --insert StuInfo values('女',13888888888) + + --insert StuInfo(stuphone) values(15888888888)