学无止境·MySQL⑤(存储函数、存储过程)

news/2024/7/7 7:55:03

存储函数和存储过程试题

  • 试题一
    • 1、创建一个可以统计表格内记录条数的存储函数 ,函数名为count_sch()
    • 2、创建一个存储过程avg_sai,有3个参数,分别是deptno,job,接收平均工资,功能查询emp表dept为30,job为销售员的平均工资。
    • 3、做的过程中,可能会遇见的问题

试题一

字段名 数据类型 主键 外键 非空 唯一 自增
id INT 是 否 是 是 否
name VARCHAR(50) 否 否 是 否 否
glass VARCHAR(50) 否 否 是 否 否

sch 表内容
id name glass
1 xiaommg glass 1
2 xiaojun glass 2

1、创建一个可以统计表格内记录条数的存储函数 ,函数名为count_sch()
2、创建一个存储过程avg_sai,有3个参数,分别是deptno,job,接收平均工资,
功能查询emp表dept为30,job为销售员的平均工资。
在这里插入图片描述

1、创建一个可以统计表格内记录条数的存储函数 ,函数名为count_sch()

create function count_sch() returns int begin declare c int; select count(1) into c from sch; return c; end//

在这里插入图片描述

select count_sch();

在这里插入图片描述

2、创建一个存储过程avg_sai,有3个参数,分别是deptno,job,接收平均工资,功能查询emp表dept为30,job为销售员的平均工资。

delimiter //
create procedure avg_sai(in p1 int,in p2 varchar(255),out p3 double) begin select avg(sai) into p3 from emp where deptno=p1 and job=p2; end//

在这里插入图片描述

call avg_sai(30,‘销售员’,@avg_sai)

在这里插入图片描述

select @avg_sai //

在这里插入图片描述

3、做的过程中,可能会遇见的问题

call avg_sai(30,‘销售员’,@a);
ERROR 1366 (HY000): Incorrect string value: ‘\xE9\x94\x80\xE5\x94\xAE…’ for column ‘p2’ at row 1
在这里插入图片描述

表的字符集规则是utf8的,但是数据库的不是,需要修改数据库的排序规则

alter database Market COLLATE = utf8_general_ci;

在这里插入图片描述


http://www.niftyadmin.cn/n/4235429.html

相关文章

(转)hibernate 二级缓存配置

在applicationContext.xml文件中添加以下代码&#xff1a; <prop key"hibernate.cache.use_second_level_cache">true</prop> <!--设置缓存机制为二级缓存 --> <prop key"hibernate.cache.use_query_cache">true</prop> …

类似layui的前端框架_浅谈SSM+接口自动化框架结合搭建测试数据平台

一、搭建SSM框架网上有很多这方面的帖子供大家参考&#xff0c;我挑了几篇供大家参考&#xff0c;有兴趣的可以了解下&#xff1a;https://www.jianshu.com/p/fdf1c2ddf201http://www.uml.org.cn/j2ee/201904192.asp二、搭建接口自动化框架所用的框架是javatestngmaven&#xf…

(转)blob和text区别

&#xff08;mysql 是没有clob的&#xff09; &#xff08;大多数方面&#xff0c;可以将BLOB列视为能够足够大的VARBINARY列。同样&#xff0c;可以将TEXT列视为VARCHAR列。&#xff09; text分为4种类型&#xff1a;TINYTEXT、TEXT、MEDIUMTEXT和LONGTEXT&#xff0c;分别对应…

ubuntu 下mysql 命令操作

常见命令&#xff1a; show databases;显示所有库use pdns;选择pdns库show tables;查看库下所有表名select * from domains;查询domians表下的内容drop table domains;删除domains表drop database pdns;删除domain库create table pdns;建一个pdns库mysql -uroot -proot pdns &l…

mysql数据库垃圾分类_垃圾分类小程序的展示:(微信小程序+react后台管理+node后台写接口+mysql数据库)...

微信小程序&#xff1a;功能介绍&#xff1a;1.首页 2.查找 3.小知识知识 4.我的 5.登录 6.注册 7.浏览历史 8.问题反馈(需要登录后反馈)9.退出展示&#xff1a;1.首页2.查找3.小知识知识4.我的5.注册6.登录7.浏览历史8.清除缓存9.问题反馈(需要登录后反馈)10.退出Reac…

spring 不能生成抽象类

抽象类不能生成实例对象&#xff0c;spring无法注入 因为spring的原理是启动服务器时读取配置文件&#xff0c;取得类名后利用反射机制在spring上下文中生成一个单例的对象&#xff0c;由spring注入属性并维护此对象的状态&#xff0c;抽象类在反射生成对象时就已经失败了&…

oracle导入导出语句

ORACLE导入导出命令解析 本文对Oracle数据的导入导出 imp ,exp 两个命令进行了介绍, 并对其相应的参数进行了说明,然后通过一些示例进行 演练,加深理解. 文章最后对运用这两个命令可能出现的问题(如权限不够,不同oracle版本)进行了探讨,并提出了相应的解决方案; 本文部分内容摘…

(转) hibernate中使用数据库关键字(保留字)

在hibernate中&#xff0c;当一个实体对象使用了数据库保留字作为字段名称&#xff08;虽说不推荐&#xff0c;但少数情况下必须使用&#xff09;&#xff0c;执行保存操作时&#xff0c;你可能会遇到如下错误。 ERROR JDBCExceptionReporter:78 - You have an error in your S…