MySQL存储过程中的变量

2023-12-30

我遇到了这个简单存储过程的问题。我想保存LAST_INSERT_ID放在一个变量中,然后将其分配给下一个插入。

    DELIMITER //
    CREATE PROCEDURE Adda(
       Name varCHAR(45),Surrname varCHAR(45),City varCHAR(45),PhoneNumber varCHAR(45),photo varCHAR(45))
    BEGIN
    START TRANSACTION;
       INSERT INTO Personal(Name,Surrname)
       VALUES(Name,Surrname);
       INSERT INTO Addres(Id_Personal_Address,Country, City) 
       VALUES(LAST_INSERT_ID(),Country,City);
--i think here i should assign LAST_INSER_ID to variable
        INSERT INTO Images(Id_Personal_Address,photo)
        VALUES(Photo); -- and here use it
    COMMIT;
    END//
    DELIMITER ;

我真的不知道该怎么做。


您需要声明一个变量并使用set分配值,例如:

DELIMITER //
    CREATE PROCEDURE Adda(
       Name varCHAR(45),Surrname varCHAR(45),City varCHAR(45),PhoneNumber varCHAR(45),photo varCHAR(45))
    BEGIN
    DECLARE last_insert_id INT;
    START TRANSACTION;
       INSERT INTO Personal(Name,Surrname)
       VALUES(Name,Surrname);
       SET last_insert_id = LAST_INSERT_ID(); --assignment
       INSERT INTO Addres(Id_Personal_Address,Country, City) 
       VALUES(last_insert_id,Country,City);
        INSERT INTO Images(Id_Personal_Address,photo)
        VALUES(last_insert_id, Photo); -- use
    COMMIT;
    END//
    DELIMITER ;
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

MySQL存储过程中的变量 的相关文章

  • 复杂的sql树行

    表结构 id message reply id 1 help me 0 434 love to 1 852 didn t work 434 0110 try this 852 2200 this wont 0 5465 done 0110
  • 删除、截断或删除以清理 MySQL 中的表

    我正在尝试清理表格 但没有摆脱表格的实际结构 我有一个id自动递增的列 我不需要保留ID号 但我确实需要它来保持其自动递增的特性 我发现了删除和截断 但我担心其中之一会完全删除整个表 从而使未来的插入命令变得无用 如何从表中删除所有记录以便
  • 限制分页页数

    objConnect mysql connect localhost root or die mysql error objDB mysql select db Test strSQL SELECT FROM UserAddedRecord
  • MySQL小写自动转换

    我有多个在数据库表中写入数据的 Web 服务 我想针对特定字段自动将大写字符串转换为小写字符串 mysql 有没有执行此任务的函数 假设这是表 id name language 有时 在语言字段内 Web 服务会写入大写字符串 IT 我想直
  • 使用php插入sql数据库时出错

    我有一个带有 MySQL 插入查询的程序 sql INSERT INTO people person id name username password email salt VALUES person id name username p
  • Innodb页面大小设置

    在innodb中 页面大小默认为16kb 如何将页面大小设置为 8kb 是否有在源编译步骤中设置的选项 您不需要在源编译步骤中指定页面大小 MySQL 5 6 及更高版本支持不同的页面大小 无需重新编译 但是 您必须在初始化 InnoDB
  • MYSQL 按喜欢/不喜欢和受欢迎程度排序

    我有评论表 其中包括喜欢和不喜欢的内容 现在我在正确的顺序上遇到了问题 实际上 我的系统在顶部显示了最多点赞的评论 我正在 youtube 上寻找类似系统的东西 这意味着 100like 100dislikes 的评论的顺序高于 1 1 我
  • 如何在 Laravel 5 中使用 Orchestral/Tenanti 构建具有多个数据库的多租户应用程序?

    我正在尝试使用 Laravel 5 构建和应用程序 它应该是使用多个数据库的多租户数据库架构 我的雇主出于安全目的要求这样做 我尝试手动管理主数据库迁移和租户迁移 但失败了 所以我决定借助 Laravel 特定包的帮助 这应该是我所需要的
  • dayname(curdate()) 不适用于 codeigniter php

    此 sql 在 phpmyadmin 中有效 但在 codeigniter php 中无效 function getProgramsHomepage data array this gt db gt select p name p star
  • 从 CSV 到 MySQL 的换行问题

    我正在将 csv 文件导入 MySQL 除了文件中的换行符之外 一切正常 我的 csv 行之一如下所示 42 E A R Classic Earplugs ear images ear classic jpg 5 Proven size s
  • 从 MySQL 将 500 万行加载到 Pandas 中

    我在 本地 网络上的 MySQL 数据库中有 500 万行 连接速度非常快 而不是在互联网上 与数据库的连接工作正常 但如果我尝试这样做 f pd read sql query SELECT FROM mytable engine inde
  • MySQL通过UPDATE/DELETE合并重复数据记录

    我有一个看起来像这样的表 mysql gt SELECT FROM Colors ID USERNAME RED GREEN YELLOW BLUE ORANGE PURPLE 1 joe 1 null 1 null null null 2
  • 使用 Laravel 和 Eloquent 从表中选择全部

    我正在使用 Laravel 4 设置我的第一个模型 以从名为的表中提取所有行posts 在标准 MySQL 中我会使用 SELECT FROM posts 如何在 Laravel 4 模型中实现这一目标 我的完整模型源代码如下
  • 当我尝试计算 mysqli 结果时,为什么会收到警告?

    下面的代码会导致此警告 警告 count 参数必须是数组或实现 Countable 的对象 为什么要这样做 如何防止出现警告 if isset GET edit sonum GET edit update true result mysql
  • MySQL - 查找接近的匹配项

    MySQL 有没有办法在文本字段中找到紧密匹配的内容 说找到 email protected cdn cgi l email protection当搜索时 email protected cdn cgi l email protection
  • PHP-MySQLi 连接随机失败并显示“无法分配请求的地址”

    大约两周以来 我一直在处理 LAMP 堆栈中最奇怪的问题之一 长话短说 与 MySQL 服务器的随机连接失败并显示错误消息 Warning mysqli real connect HY000 2002 Cannot assign reque
  • 使用表白名单选项更新 Debezium MySQL 连接器

    我正在使用 Debezium 0 7 5 MySQL 连接器 并且我试图了解如果我想使用以下选项更新此配置 最好的方法是什么table whitelist 假设我创建了一个连接器 如下所示 curl i X POST H Accept ap
  • 蟒蛇 | MySQL | AttributeError:模块“mysql.connector”没有属性“connect”

    我正在学习 python 中的一个新库 mysql 我尝试执行以下命令 import mysql connector mydb mysql connector connect host localhost user root passwd
  • 控制数据是否存在于数组中

    我在mysql中有两个不同的表 我正在使用curl从json文件中获取数据 我的第一个表名称是 tblclients 该表存储客户端数据 我的第二个表名称是 tblcustomfieldsvalues 该表使用 tblclients 表的
  • 错误 1305 (42000):保存点...不存在

    我的 MYSQL 数据库中有这个 SQL 存储过程为空 所以我猜没有隐式提交 DROP PROCEDURE IF EXISTS doOrder DELIMITER CREATE PROCEDURE doOrder IN orderUUID

随机推荐

  • 如何使用console.readline()读取整数?

    我是一名正在学习 NET 的初学者 我尝试在控制台读取行中解析我的整数 但它显示格式异常 My code using System namespace inputoutput class Program static void Main s
  • 有没有办法在 Inno Setup 中读取系统信息

    有没有办法在安装过程中 仅在欢迎向导页面 读取 Inno Setup 中的系统信息 我的意思是 RAM OS CPU user IP MAC地址 如果知道的话那就太好了 我想将此信息放入一个文本文档中 并将其保存在计算机上 我似乎根本无法在
  • Ubuntu 16.04 上的 SQLite 和 JSON1

    是否有适用于 Linux Ubuntu 的 SQLite 发行版是使用 JSON1 扩展编译的 SQLite JSON1 页面上的说明仅解释了如何在编译后加载扩展 我想避免离题 Ubuntu Xenial 附带 SQLite3 11 0 1
  • Angular 2 with jasmine:带有注入服务的测试组件

    我无法为我的 Angular 2 项目创建一个简单的 jasmine 测试 这就是我想做的 要测试的组件 基于服务 Component providers AccountService selector account templateUr
  • 为什么ARM说“链接寄存器支持快速叶函数调用”

    我最近遇到了链接寄存器和叶函数的概念 我从之前的 SO 读中了解到 LR 告诉代码之前在执行期间的位置 我还知道叶函数是位于函数调用层次结构末尾的函数 The ARM 维基百科页面说 https en wikipedia org wiki
  • 更改 TextView 颜色

    如何更改单个 TextView 的 R G B TextView 没有亮度属性 它们的前景色和背景色使用 ARGB 值设置 例如 0xff000000 表示不透明的黑色背景 0xffffffff 表示不透明的白色前景 要增加亮度 只需将 R
  • 使用超过 30m 前更新的时间戳进行拉取的查询无法正常工作

    我绞尽脑汁试图解决这个问题 一切似乎都很顺利 但它并没有按照我的预期工作 我有一个索引test index并附有以下文件 index test index type testType id AV33b VYUyX1XZAq7NTI scor
  • 使用 CSS 和 jQuery 的动态、表格式列表项行

    我有一个内容项列表 每个内容项都有设定的宽度但不同 可变 的高度 列表中的每个项目都会向左浮动 HTML 和 CSS 如下 ul li h3 Item One h3 img src one png p First item content
  • 开发人员应该提交 Go 生成的代码吗?

    我使用代码生成器插件根据 OpenAPI 规范生成服务器存根 我想知道是否应该将生成的代码提交给版本控制 一般来说 是的 推理很简单 如果我是您代码的下游用户 也就是说 我只想将您的库作为依赖项包含在内或构建您的应用程序 那么构建您的代码就
  • 使用 vb.net 将表脚本编写为 CREATE TO

    在 SQL Server 中 我可以创建一个与另一个表重复的表 并在其中设置所有约束 我可以在 SQL Server Management Studio 中使用脚本表作为 CREATE TO 来执行此操作 然后我可以在另一个数据库中运行该脚
  • Smalltalk ReferenceStream 对新实例变量有问题吗?

    在 Pharo Smalltalk 中 我使用 ReferenceStream 序列化对象列表 这是我要序列化的对象的类定义 Object subclass Task instanceVariableNames title notes li
  • 整合银行账户[已关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何 API 可以将银行帐户集成到 NET 应用程序中 我希望为用户提供将银行对账单提取到我的软件
  • 动态铸造?

    我需要一种方法将对象转换为编译时未知的类型 像这样的东西 object obj public type of obj Obj get return obj set obj type of obj value 唯一知道的是 obj 是一个值类
  • 远程 Glassfish v4.1 部署上出现 TimeoutException

    我在 OVH 上有 VPS 假设它是 vpsXXXX ovh net 使用 Debian 7 我已经安装了 Java 8 Glassfish 4 1 并启用了安全管理 asadmin gt change admin password use
  • 使用Sql Server 2016的OPENJSON函数从Json文档中的多个数组元素中选择结果

    是否可以在 Sql Server 2016 中将来自多个数组元素的 json 文档的部分组合成单个结果 给定这个 json fruit types possible Apples Bananas Pears category Basic p
  • C# 控制电脑音量

    有没有办法在 C 中控制计算机的实际音量并将其显示在垂直轨迹栏中 我几乎已经尝试了一切 但一定有一些东西我错过了 Thanks 您是否尝试过使用winmm dll通过 p Invoke 库 这就是本文所推荐的 http www dreami
  • 测试 SQLite 触发器内的 COUNT()>X

    如何比较 SQLite 中触发器内的 COUNT 结果 到目前为止 这是我想出的代码 CREATE TRIGGER mytrigger BEFORE INSERT ON mytable BEGIN SELECT CASE WHEN SELE
  • Django 查询聚合同一字段中匹配实例的总和

    我有以下 Django 2 1 模型 class Sales models Model product name models ForeignKey Product category models ForeignKey Category s
  • 如何在kubernetes环境中使用spark配置beam python sdk

    TLDR 如何使用 environment type EXTERNAL 或 PROCESS 配置 Apache Beam 管道选项 描述 目前 我们在 Kubernetes 中有一个独立的 Spark 集群 如下this https sta
  • MySQL存储过程中的变量

    我遇到了这个简单存储过程的问题 我想保存LAST INSERT ID放在一个变量中 然后将其分配给下一个插入 DELIMITER CREATE PROCEDURE Adda Name varCHAR 45 Surrname varCHAR