MySQL创建存储过程函数

DDL

CREATE TABLE `student` (
  `id` int(11) NOT NULL AUTO_INCREMENT COMMENT '学号',
  `createDate` datetime DEFAULT NULL,
  `userName` varchar(20) DEFAULT NULL,
  `pwd` varchar(36) DEFAULT NULL,
  `phone` varchar(11) DEFAULT NULL,
  `age` tinyint(3) unsigned DEFAULT NULL,
  `sex` char(2) DEFAULT '男',
  `introduce` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
 
CREATE TABLE `result` (
  `rid` int(11) NOT NULL AUTO_INCREMENT COMMENT '成绩编号',
  `testName` varchar(255) DEFAULT NULL COMMENT '测试名称',
  `score` double(4,2) DEFAULT NULL COMMENT '成绩',
  `studentId` int(11) DEFAULT NULL COMMENT '学生id',
  PRIMARY KEY (`rid`),
  KEY `studentId` (`studentId`),
  CONSTRAINT `result_ibfk_1` FOREIGN KEY (`studentId`) REFERENCES `student` (`id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

DML

insert into student values(0,'2024-02-25 10:10:10','赵灵儿','123',
'15612345678',16,'女','逍遥哥哥,你终于找到我了。');
insert into student values(0,'2024-02-25 10:10:10','王语嫣','123',
'15612345678',17,'女','慕容复,我和你不共戴天。');
insert into student values(0,'2024-02-25 10:10:10','龙姑娘','123',
'15612345678',22,'女','我想过过过儿过过的日子。');
insert into student values(0,'2024-02-25 10:10:10','杨过','123',
'15612345678',18,'男','一遇杨过误终身。');
insert into student values(0,'2024-02-25 10:10:10','杨逍','123',
'15612345678',27,'男','杨过跟程英的大儿子。');
insert into student (userName,age,introduce)values('黄衣女子',26,'杨过与龙姑娘的大女儿。');
 
insert into result values(0,'政治',96,1);
insert into result values(0,'地理',86,5);
insert into result values(0,'政治',77,3);
insert into result values(0,'英语',99,3);
insert into result values(0,'历史',22,6);
insert into result values(0,'化学',69,2);
insert into result values(0,'Java',79,5);
insert into result values(0,'Java',67,6);
insert into result values(0,'政治',97,2);
insert into result values(0,'物理',76,6);
insert into result values(0,'物理',82,2);
insert into result values(0,'化学',56,4);

无参数 

# MySQL创建存储过程函数

delimiter $$
# 声明一个名称为get_student_introduce
create procedure get_student_introduce()
#开始操作
begin
# 撰写真正在操作DML+DQL都行
set @userName='龙姑娘';
select introduce '简介' from student where userName=@userName;
end $$
delimiter;
# 使用函数(调用存储过程)
call get_student_introduce

含参数

# MySQL创建存储过程函数

delimiter $$
# 声明一个名称为get_student_introduce
create procedure get_student_introduce1(in p_name varchar(20))
#开始操作
begin
# 撰写真正在操作DML+DQL都行
select introduce '简介' from student where userName=p_name;
end $$
delimiter;
# 使用函数(调用存储过程)
call get_student_introduce1('王语嫣');

修改,删除语句

# MySQL创建存储过程函数
# 存储过程使用大纲,有参数传递
delimiter $$
# 声明一个名称为get_student_introduce
create procedure update_student_id(in p_userName varchar(20),in p_phone varchar(11),p_sex char(2),p_introduce varchar(255))
#开始操作
begin
# 撰写真正在操作DML+DQL都行
# insert into student (userName,phone,sex,introduce) values (p_userName,p_phone,p_sex,p_introduce);
# update student set introduce=p_introduce where userName=p_userName;
delete from student where id=p_id;
end $$
delimiter;
# 使用函数(调用存储过程)
call update_student_id('邢昊阳','13031553562','男','神');
select * from student where userName='邢昊阳';

相关推荐

  1. MySQL创建存储过程函数

    2024-05-14 10:44:05       12 阅读
  2. MySQL创建存储过程函数

    2024-05-14 10:44:05       12 阅读
  3. MYSQL 存储过程 函数

    2024-05-14 10:44:05       11 阅读
  4. mysql编程--创建存储过程

    2024-05-14 10:44:05       7 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-05-14 10:44:05       16 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-05-14 10:44:05       16 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-05-14 10:44:05       15 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-05-14 10:44:05       18 阅读

热门阅读

  1. 算法小记(二分)

    2024-05-14 10:44:05       11 阅读
  2. leetcode刷题

    2024-05-14 10:44:05       12 阅读
  3. 2024.5.14每日一题

    2024-05-14 10:44:05       11 阅读
  4. 富格林:梳理可信经验保障安全

    2024-05-14 10:44:05       12 阅读
  5. 深度学习之损失函数

    2024-05-14 10:44:05       10 阅读
  6. C#基础打印、输入、占位符

    2024-05-14 10:44:05       9 阅读