iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >如何在MySQL中使用存储结构
  • 793
分享到

如何在MySQL中使用存储结构

2024-04-02 19:04:59 793人浏览 薄情痞子
摘要

这期内容当中小编将会给大家带来有关如何在Mysql中使用存储结构,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.新建两张数据表:student1, student2新建

这期内容当中小编将会给大家带来有关如何在Mysql中使用存储结构,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。

1.新建两张数据表:student1, student2

新建student1

DROP TABLE IF EXISTS student1;
CREATE TABLE student1 (
id INT NOT NULL auto_increment,
name TEXT,
age INT,
PRIMARY KEY(id)
);

新建student2

DROP TABLE IF EXISTS student2;
CREATE TABLE student2 (
id INT NOT NULL auto_increment,
name TEXT,
age INT,
PRIMARY KEY(id)
);

2.向student1中新增数据

INSERT INTO student1 (name, age) VALUES ('xiaoming', 18);
INSERT INTO student1 (name, age) VALUES ('xiaohong', 17);
INSERT INTO student1 (name, age) VALUES ('xiaogang', 19);
INSERT INTO student1 (name, age) VALUES ('xiaoyu', 18);
INSERT INTO student1 (name, age) VALUES ('xiaohua', 20);

实现功能说明

1.打印student1中的部分信息

2.把student1中的部分数据复制到student2中

3.传入参数作为限制条件,把student1中的部分数据复制到student2中

注意事项

在编写存储结构的时候,我们不能以分号(;)结束。因为我们的sql语句就是以分号(;)结尾的。这里我们要修改一下存储结构的结束符号(&&)。

这里我们使用mysql中的DELIMITER进行修改,并在存储结构创建完毕时,再改为分号(;)结束即可。

关于这一点在后面的例子中有所体现。在编写MySQL的触发器中,也会用到类似的情况。

使用方式

1.打印student1中的部分信息

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro1;
---------------------------------------------------------------
DELIMITER &&
CREATE PROCEDURE test_pro1()
BEGIN
 set @sentence = 'select * from student1 where age<19;';
 prepare stmt from @sentence;
 execute stmt;
 deallocate prepare stmt;
END &&
DELIMITER ;

2.复制表存储过程的编写(不带参数)

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro2;
---------------------------------------------------------------
DELIMITER &&
create procedure test_pro2()
begin
  DECLARE stop_flag INT DEFAULT 0;
  DECLARE s_name TEXT default '';
  DECLARE s_age INT default 0;
  DECLARE cur1 CURSOR FOR (select name, age from student1 where age<19);
    DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET stop_flag=1;
  open cur1;
    fetch cur1 into s_name, s_age;
  while stop_flag<>1 DO
    insert into student2(name, age) values(s_name, s_age);
    fetch cur1 into s_name, s_age;
  end while;
  close cur1;
end &&
DELIMITER ;

3.复制表存储过程的编写(带参数)

---------------------------------------------------------------
DROP PROCEDURE IF EXISTS test_pro3;
---------------------------------------------------------------
DELIMITER &&
create procedure test_pro3(IN p_age INT)
begin
  DECLARE stop_flag INT DEFAULT 0;
  DECLARE s_name TEXT default '';
  DECLARE s_age INT default 0;
  DECLARE cur1 CURSOR FOR (select name, age from student1 where age<p_age);
    DECLARE CONTINUE HANDLER FOR SQLSTATE '02000' SET stop_flag=1;
  open cur1;
    fetch cur1 into s_name, s_age;
  while stop_flag<>1 DO
    insert into student2(name, age) values(s_name, s_age);
    fetch cur1 into s_name, s_age;
  end while;
  close cur1;
end &&
DELIMITER ;

这里的SQLSTATE '02000'和NOT FOUND系统返回值是一样的。

4.使用方式

call test_pro1();

or

call test_pro1(123);

上述就是小编为大家分享的如何在MySQL中使用存储结构了,如果刚好有类似的疑惑,不妨参照上述分析进行理解。如果想知道更多相关知识,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: 如何在MySQL中使用存储结构

本文链接: https://www.lsjlt.com/news/55606.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何在MySQL中使用存储结构
    这期内容当中小编将会给大家带来有关如何在MySQL中使用存储结构,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。1.新建两张数据表:student1, student2新建...
    99+
    2024-04-02
  • Gorm:如何在字段中存储结构
    问题内容 我试图将 *hedera.contractid 类型的 hederea 合约 id 保存到 gorm 字段中,但收到错误“为 struct github.com/hashgr...
    99+
    2024-02-06
  • 如何在mysql中使用存储过程
    如何在mysql中使用存储过程?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。存储过程包含了一系列可执行的sql语句,存储过程存放于MySQL中...
    99+
    2024-04-02
  • 如何在 PHP 中使用 MySQL 存储过程?
    要在 php 中使用 mysql 存储过程:使用 pdo 或 mysqli 扩展连接到 mysql 数据库。准备调用存储过程的语句。执行存储过程。处理结果集(如果存储过程返回结果)。关闭...
    99+
    2024-05-11
    mysql php
  • Mysql如何通过Adjacency List存储树形结构
    这篇文章主要介绍Mysql如何通过Adjacency List存储树形结构,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!如何在数据库中存储树形结构呢?像mysql这样的关系型数据库,...
    99+
    2024-04-02
  • 如何在mysql存储过程中使用游标
    本篇文章给大家分享的是有关如何在mysql存储过程中使用游标,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。在处理存储过程中的结果集时,可以使用...
    99+
    2024-04-02
  • MySQL中的数据存储结构是什么
    这篇文章主要介绍“MySQL中的数据存储结构是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL中的数据存储结构是什么”文章能帮助大家解决问题。 ...
    99+
    2023-02-14
    mysql
  • 如何在MySQL中使用C#编写存储过程
    如何在MySQL中使用C#编写存储过程在MySQL数据库中,存储过程是一组预定义的SQL语句,可以以一定的逻辑顺序组合成一个单元的程序。它可以用于简化和优化数据库操作,并提高应用程序的性能和安全性。C#是一种广泛使用的编程语言,具有强大的数...
    99+
    2023-10-22
    MySQL C# 存储过程
  • MySQL IF 语句如何在存储过程中使用?
    MySQL IF 语句在存储过程中实现基本条件构造。其语法如下 -IF expression THEN Statements; END IF;它必须以分号结尾。为了演示 IF 语句在 MySQL 存储过程中的使用,我们将创建以下存储过程,该...
    99+
    2023-10-22
  • 如何在MySQL中使用存储过程和函数?
    如何在MySQL中使用存储过程和函数?在MySQL中,存储过程和函数是被封装的一组SQL语句,可以被重复调用。存储过程是一组可以在服务器上执行的SQL语句集合,而函数则是一个独立的且可重用的代码块。两者的不同之处在于,存储过程可以返回多个结...
    99+
    2023-10-22
    函数 MySQL 存储过程
  • 如何在MySQL中使用Python编写存储过程
    标题:MySQL中使用Python编写存储过程的示例及实践指南在MySQL中使用存储过程可以有效地将复杂的数据库操作封装起来,提高数据库的执行效率和安全性。本文将介绍如何使用Python编写MySQL的存储过程,并提供具体的代码示例供参考。...
    99+
    2023-10-22
    Python MySQL 存储过程
  • MySQL中如何使用存储过程
    这篇文章将为大家详细讲解有关MySQL中如何使用存储过程,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。 使用CallableStatemen...
    99+
    2024-04-02
  • 如何在ASP存储中使用Git?
    ASP存储是一种常用的Web应用程序框架,它提供了一个灵活和可扩展的平台,用于构建各种类型的Web应用程序。Git是一种流行的版本控制系统,它可以帮助我们更好地管理代码并协作开发。在本文中,我们将探讨如何在ASP存储中使用Git。 安装G...
    99+
    2023-08-25
    存储 django git
  • 如何在MySQL中存储图片
    如何在MySQL中存储图片?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。首先,先要在数据库中建表。我在名为test的数据库下建立了一个叫pic...
    99+
    2024-04-02
  • 如何在 Django 中使用 Go 存储缓存?
    Django 是一个流行的 Python Web 框架,而 Go 是一门高效的编程语言。在 Web 开发中,缓存是一个非常重要的概念,它可以大大提高 Web 应用程序的性能。本文将介绍如何在 Django 中使用 Go 存储缓存。 一、什么...
    99+
    2023-11-08
    存储 django 缓存
  • 如何在c++中使用map结构
    如何在c++中使用map结构?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。map的常用用法map 表示映射,可以将任何基本类型(包括 STL 容器)映射到任何基本类型(包括 S...
    99+
    2023-06-14
  • MySQL IF ELSE 语句如何在存储过程中使用?
    MySQL IF ELSE 语句在表达式计算结果为 false 时实现基本条件构造。其语法如下 -IF expression THEN statements; ELSE else-statements; END IF;语句必须以...
    99+
    2023-10-22
  • 在MySQL中如何使用存储过程和触发器
    在MySQL中,可以使用存储过程和触发器来实现一些特定的功能。下面分别介绍如何创建和使用存储过程和触发器: 存储过程: 存储过程...
    99+
    2024-04-09
    MySQL
  • MySQL IF ELSE 语句如何在存储过程中使用
    在MySQL中,可以使用IF ELSE语句在存储过程中进行条件判断和逻辑分支控制。以下是一个示例:```mysqlDELIMITER...
    99+
    2023-10-10
    MySQL
  • 如何在MySQL中设计商城的库存表结构?
    如何在MySQL中设计商城的库存表结构?在设计商城的库存表结构时,需要考虑到商品的属性、分类、库存数量、价格等信息。下面将结合具体的代码示例来介绍如何在MySQL中设计商城的库存表结构。首先,我们可以创建一个名为products的表来存储商...
    99+
    2023-10-31
    MySQL 结构 商城 库存表
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作