
- 语法:delimiter//
- create procedure 存储过程名称(参数)
- begin
- 相关代码.......
- end//
- delimiter;
-
- 调用:
- call 存储过程名称(参数)
-
- 注意:My SQL5.0以前并不支持存储过程.
-
- My SQL存储过程特点:
- (1).不能有select语句
- (2).不能使用return(return只能在函数中调用).
-
- 示例:
- drop database if exists BookDB;
- create database BookDB;
-
- -- 获取权限
- alter database BookDB CHARACTER set utf8;
-
- -- 连接库
- use BookDB;
-
- -- 图书类型表
- drop table if exists BookType;
- create table BookType
- (
- type_id int not null primary key,
- type_name varchar(20) not null,
- type_remark VARCHAR(50) null DEFAULT'略'
- );
- insert into BookType values(1001,'历史经典',DEFAULT);
- insert into BookType values(1002,'教育类文学',DEFAULT);
- insert into BookType values(1003,'小说类',DEFAULT);
- insert into BookType values(1004,'儿童文学',DEFAULT);
- insert into BookType values(1005,'自然科学',DEFAULT);
-
- -- 图书信息表
- drop table if exists Book;
- create table Book
- (
- book_id int not null primary key,
- book_name varchar(20) not null,
- book_author VARCHAR(20) not null,
- book_date VARCHAR(20) not null,
- book_type int not null,
- book_remark VARCHAR(50) null default'略',
- price decimal(6,2) not null,
- book_num int not null,
- foreign key(book_type) references BookType(type_id)
- );
- insert into Book values(2001,'西游记','吴承恩','1986-1-2',1001,default,55,10);
- insert into Book values(2002,'红楼梦','曹雪芹','1986-1-2',1001,default,77,12);
- insert into Book values(2003,'三国演义','罗贯中','1986-1-2',1001,default,60,20);
- insert into Book values(2004,'水浒传','施耐庵','1986-1-2',1001,default,40,30);
- insert into Book values(2005,'满分作文','不详','2016-1-2',1002,default,20,20);
- insert into Book values(2006,'单词速记','不详','2017-1-2',1002,default,10,10);
- insert into Book values(2007,'王后雄文学','王后雄','2016-5-3',1002,default,25,20);
- insert into Book values(2008,'全文解析','不详','2018-1-2',1002,default,30,25);
- insert into Book values(2009,'斗破苍穹','唐家三少','2005-12-2',1003,default,50,50);
- insert into Book values(2010,'斗罗大陆','唐家三少','2006-10-2',1003,default,30,10);
- insert into Book values(2011,'圣墟','唐家三少','2007-1-2',1003,default,10,20);
- insert into Book values(2012,'星辰变','辰东','2008-1-2',1003,default,12,15);
- insert into Book values(2013,'安徒生童话','安徒生','2003-1-2',1004,default,10,20);
- insert into Book values(2014,'格林童话','格林','2004-1-2',1004,default,15,30);
- insert into Book values(2015,'海的女儿','安徒生','2001-6-26',1004,default,20,10);
- insert into Book values(2016,'睡美人','川端康成','2002-7-8',1004,default,30,10);
- insert into Book values(2017,'皇帝的新装','安徒生','1999-1-2',1004,default,50,40);
- insert into Book values(2018,'地理大百科','不详','2005-1-2',1005,default,20,30);
- insert into Book values(2019,'动物大百科','不详','2006-6-21',1005,default,30,20);
- insert into Book values(2020,'人与自然','不详','1986-4-2',1004,default,20,20);
-
-
- SELECT*FROM BookType;
- SELECT*FROM Book;
-
- desc book;
-
- /*************************************************************************************/
- #创建数据库
- drop database if exists studb;
- create database studb;
-
- #调协编号
- alter database studb CHARACTER set utf8;
-
- #切换
- use studb;
-
- #创建表一:学生信息表
- drop table if exists stuinfo;
- create table stuinfo
- (
- stuno varchar(10) not null,
- stuname varchar(10) not null,
- stusex enum('男','女') not null,
- stuphone char(11) not null,
- stuaddrss varchar(200) null
- );
-
- #创建表二:
- drop table if exists courseinfo;
- create table courseinfo
- (
- cid int primary key auto_increment,
- cname varchar(20) not null
- );
-
-
- #创建表三:成绩表
- drop table if exists scoreinfo;
- create table scoreinfo
- (
- sid int primary key auto_increment,
- stuno varchar(10) not NULL, -- 外键,引用stuinfo(stuno)
- cid int not null, -- 外键,引用courseinfo(cid)
- bishi int not null,
- jishi int not null
- );
-
- # 为stuinfo 表添加主键列stuno
- /*
- 主键特点:
- 一个表中可以没有主键,但如果有最多一个
- 联合主键:由多个列构成的主键
- */
- alter table stuinfo
- add constraint PK_stuinfo_stuno primary key(stuno);
-
- # 为stuinfo表添加默认约束stuaddress
- alter table stuinfo
- alter column stuaddrss set default '地址不详';
-
- #为course表添加唯一约束cname
- alter table courseinfo
- add constraint UQ_courseinfo_cname unique(cname);
-
- #为scoreinfo表添加外键
- #1.stuno去引用stuinfo表的stuno
- alter table scoreinfo
- add constraint FK1 foreign key(stuno) references stuinfo(stuno);
-
- #2.cid去引用courseinfo表的cid
- alter table scoreinfo
- add constraint Fk2 foreign key(cid) references courseinfo(cid);
-
-
- desc stuinfo;
- desc courseinfo;
- desc scoreinfo;
-
- select * from stuinfo;
- select * from courseinfo;
- select * from scoreinfo;
- insert into stuinfo values('T468001','小黑黑','男','13112345678',default);
- insert into stuinfo values('T468002','小花花',2,'15112345678',default);
- insert into stuinfo values('T468003','小黑黑',1,'15245869365','北京');
- insert into stuinfo values('T468004','张秋丽',1,'13657859654','上海');
- insert into stuinfo values('T468005','韦小宝',2,'15145263542','河南');
- insert into stuinfo values('T468006','张三个',2,'18745263596','成都');
-
- insert into courseinfo values(null,'C#');
- insert into courseinfo values(null,'SQLSERVER');
- insert into courseinfo values(null,'JAVASCRIPT');
- insert into courseinfo values(null,'ASP.NET');
-
-
- insert into scoreinfo values(null,'T468001',1, 86,82 );
- insert into scoreinfo values(null,'T468001',2,77,67);
- insert into scoreinfo values(null,'T468001',3,85,99);
- insert into scoreinfo values(null,'T468002',2,36,52);
- insert into scoreinfo values(null,'T468002',3,45,22);
- insert into scoreinfo values(null,'T468002',4,98,90);
- insert into scoreinfo values(null,'T468005',1,66,60);
- insert into scoreinfo values(null,'T468005',2,78,52);
- insert into scoreinfo values(null,'T468005',3,99,56);
- insert into scoreinfo values(null,'T468005',4,25,52);
- select * from stuinfo;
- select * from courseinfo;
- select * from scoreinfo;
- #定义存储过程,根据给入学号,获取该学员及格的科目数量(带输入和输出参)studb
- drop procedure if exists proc_getsum;
- delimiter //
- create procedure proc_getsum(in sno varchar(10),out count int)
- BEGIN
- set count = (select count(*) from scoreinfo where stuno = (select stuno from stuinfo where stuno=sno) and bishi >=60 and jishi >=60);
- end//
- delimiter ;
- -- 调用
- call proc_getsum('T468001',@sum1);
- select @sum1 as '及格科数';
评价
排名
75
文章
3
粉丝
4
评论
1
Web前段框架技术之全选,全不选,反选并显示出来
剑轩 : 那插件叫啥名字哇
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2025TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:
50010702506256


欢迎加群交流技术