From 355889bda0b7889374e53538b35f2fec96a93d09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=B4=AA=E7=81=BF=E8=8A=B3?= <2409046129@qq.com> Date: Mon, 5 Sep 2022 23:25:02 +0800 Subject: [PATCH] =?UTF-8?q?9.5=E7=AC=94=E8=AE=B0=E4=BD=9C=E4=B8=9A?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...13\350\241\250\350\256\276\350\256\241.md" | 93 +++++++++++++++++++ ...76\350\256\241\344\275\234\344\270\232.md" | 4 +- ...30\347\272\247\347\254\224\350\256\260.md" | 50 +++++++++- 3 files changed, 144 insertions(+), 3 deletions(-) create mode 100644 "13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.05 day5 \345\267\245\347\250\213\350\241\250\350\256\276\350\256\241.md" diff --git "a/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.05 day5 \345\267\245\347\250\213\350\241\250\350\256\276\350\256\241.md" "b/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.05 day5 \345\267\245\347\250\213\350\241\250\350\256\276\350\256\241.md" new file mode 100644 index 0000000..79ac72e --- /dev/null +++ "b/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.05 day5 \345\267\245\347\250\213\350\241\250\350\256\276\350\256\241.md" @@ -0,0 +1,93 @@ +# 9.05 day5 工程表设计 + +~~~sql +```sql +create database Gc +go +use gc +go +--工程表 +create table Gcinfo +( +Gcid varchar(10) primary key, +Gcname varchar(20), +) +--职工表 +create table Zginfo +( +Zgid int primary key, +Zgname varchar(20), + +) +--职务表 +create table Zwinfo +( +Zw varchar(20) primary key, +Xsgzl int +) +--项目表 +create table xm +( +gcid varchar(20), +zgid int references zgb(zgid), +gtime int, +gz decimal +) +--工程表 +insert gcb +values ('A1','花园大厦'), +('A2','立交桥'), +('A3','临江饭店') +--职工表 +insert zgb +values (1001,'齐光明'), + (1002,'李思岐'), + (1003,'鞠明亮'), + (1004,'葛宇洪') +--职务表 +insert zwb values +('工程师','65'), +('技术员','60'), +('律师','60'), +('工人','55') +--项目表 +insert xm values +('A1',1001,13,845.00), +('A1',1002,16,960.00), +('A1',1004,19,1140.00), +('A2',1001,15,975.00), +('A2',1003,17,935.00), +('A3',1002,18,1080.00), +('A4',1004,14,840.00) + +select * from gcb +select * from zgb +select * from zwb +select * from xm + +--根据座位号找出张无忌的前后同学 + +declare @id int + +select @id=StuSeat-1 from StuInfo where StuName='张无忌' + +print @id + +declare @id int + +select @id=StuSeat+1 from StuInfo where StuName='张无忌' + +print @id + +select * from StuInfo where StuSeat=@id+1 or StuSeat =@id-1 + +--查询年龄最大的学生信息 +declare @age int + +select @age=max(stuage) from StuInfo + +print @age +``` + +~~~ + diff --git "a/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.1 day4 \346\225\260\346\215\256\345\272\223\350\256\276\350\256\241\344\275\234\344\270\232.md" "b/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.1 day4 \346\225\260\346\215\256\345\272\223\350\256\276\350\256\241\344\275\234\344\270\232.md" index 52e92d4..695ed1a 100644 --- "a/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.1 day4 \346\225\260\346\215\256\345\272\223\350\256\276\350\256\241\344\275\234\344\270\232.md" +++ "b/13 \346\264\252\347\201\277\350\212\263/\344\275\234\344\270\232/9.1 day4 \346\225\260\346\215\256\345\272\223\350\256\276\350\256\241\344\275\234\344\270\232.md" @@ -12,7 +12,7 @@ 请画出教员,学生,课程,教室的E-R图 - ![](C:\Users\24090\Desktop\git\advanced-sql\13 洪灿芳\作业\img\9.1\9.1-1.jpg) + ![](img.xiaowuyya.xyz/img/9.1-1.jpg) ## 2.第二题 @@ -35,7 +35,7 @@ 4.转账信息表(存储转账信息记录) 5.状态信息变化表(存储银行卡状态变化的记录,状态有1:正常,2:挂失,3:冻结,4:注销) -![](C:\Users\24090\Desktop\git\advanced-sql\13 洪灿芳\作业\img\9.1\9.1-2.jpg) +![](img.xiaowuyya.xyz/img/9.1-2.jpg) ### 2.1建表 diff --git "a/13 \346\264\252\347\201\277\350\212\263/\347\254\224\350\256\260/Sql server \351\253\230\347\272\247\347\254\224\350\256\260.md" "b/13 \346\264\252\347\201\277\350\212\263/\347\254\224\350\256\260/Sql server \351\253\230\347\272\247\347\254\224\350\256\260.md" index ab028bd..20f86eb 100644 --- "a/13 \346\264\252\347\201\277\350\212\263/\347\254\224\350\256\260/Sql server \351\253\230\347\272\247\347\254\224\350\256\260.md" +++ "b/13 \346\264\252\347\201\277\350\212\263/\347\254\224\350\256\260/Sql server \351\253\230\347\272\247\347\254\224\350\256\260.md" @@ -215,4 +215,52 @@ ER图中E代表Entity实体 R代表Relationship关系,总结来说ER图就是 | ------ | -------- | | U001 | 白展堂 | | U002 | 吕秀才 | -| U003 | 郭老板 | \ No newline at end of file +| U003 | 郭老板 | + +## 5.数据库变量 + +数据库的变量声明跟Java C# 不一样 + +### 5.1变量声明 + +要声明变量,请使用`declare`语句。 例如,以下语句声明了一个名为`@Id`的变量 + +一个@ 代表局部变量 两个@@代表全局变量 + +```sql +--声明 @变量名 数据类型 +declare @Id int +--要声明多个变量,可以用逗号分隔变量: +DECLARE @Id int, + @Name varchar(max); +``` + + + +### 5.2变量赋值 + +#### set赋值 + +要为变量赋值,可以用set 语句 例如下面@id设置成2001 + +```sql +declare @Id int +set @id = 2001 +``` + +但是set 语句适合直接赋值给数据表 如果一次性赋值多个数据,会默认取最后一个数据 + +#### select 赋值 + +```sql +declare @Id int +select @Id = stuId from stuinfo where stuname ='XXX' +``` + +#### set 和 select 区别 + +| | SELECT | SET | +| ------------------------ | -------------------------- | -------------- | +| 同时对多个变量同时赋值时 | 支持 | 不支持 | +| 表达式返回多个值时 | 将返回的最后一个值赋给变量 | 出错 | +| 表达式未返回值时 | 变量保持原值 | 变量被赋null值 | \ No newline at end of file -- Gitee