当前位置: 首页 > wzjs >正文

网站开发小作业查房价的官方网站

网站开发小作业,查房价的官方网站,如何部署php网站,就业seo好还是sem在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为。以下是详细解释和解决方案: 问题根源 SQLyog的语句分隔逻辑: SQLyog默认会根据分号(;)和换行自动分隔SQL语句 当代码有缩进时,SQLy…

在SQLyog中执行存储过程时出现的前置缩进问题,实际上反映了SQLyog对SQL语句解析的一个特殊行为。以下是详细解释和解决方案:


问题根源

  1. SQLyog的语句分隔逻辑

    • SQLyog默认会根据分号(;)和换行自动分隔SQL语句

    • 当代码有缩进时,SQLyog可能错误地将缩进后的内容识别为新的SQL语句

  2. DELIMITER的敏感性

    • DELIMITER //命令必须独立一行且无前导空格

    • 任何缩进都会导致SQLyog将其视为普通文本而非指令

  3. 存储过程体内的语句

    • 过程体内的缩进不会影响执行(因为是作为整体解析)

    • 但过程体外的命令(如DELIMITER)必须无缩进


正确写法示例

-- 必须顶格写(无缩进)
DELIMITER //
CREATE PROCEDURE grant_role_to_all_users()
BEGIN-- 这里面的缩进不会影响执行DECLARE finished INTEGER DEFAULT 0;DECLARE user_host VARCHAR(255);DECLARE user_cursor CURSOR FOR SELECT CONCAT('`',USER,'`@`',HOST,'`') FROM mysql.user WHERE USER NOT IN ('root','mysql.sys','mysql.session','mysql.infoschema');DECLARE CONTINUE HANDLER FOR NOT FOUND SET finished = 1;OPEN user_cursor;get_user: LOOPFETCH user_cursor INTO user_host;IF finished = 1 THEN LEAVE get_user; END IF;SET @grant_sql = CONCAT('GRANT "public_role" TO ', user_host);PREPARE stmt FROM @grant_sql;EXECUTE stmt;DEALLOCATE PREPARE stmt;SET @default_sql = CONCAT('SET DEFAULT ROLE "public_role" FOR ', user_host);PREPARE stmt FROM @default_sql;EXECUTE stmt;DEALLOCATE PREPARE stmt;END LOOP get_user;CLOSE user_cursor;
END//
-- 必须顶格写(无缩进)
DELIMITER ;

永久解决方案

  1. 关闭SQLyog的自动分隔功能

    • 菜单栏 → 工具 → 首选项 → 查询编辑器

    • 取消勾选"自动分隔SQL语句"

  2. 使用批处理执行模式

    • 全选所有代码(包括DELIMITER)

    • Ctrl+Shift+F9(批处理执行)而非普通执行

  3. 检查编辑器设置

    • 确保没有开启"智能缩进"或"语法感知缩进"功能


为什么命令行不受影响?

MySQL原生命令行客户端:

  • 完全依赖DELIMITER指令

  • 不关心缩进和格式

  • 直到遇到定义的结束符(如//)才会执行

而SQLyog等图形工具为提高易用性,会尝试自动解析SQL结构,导致对格式敏感。


最佳实践建议

  1. 存储过程创建语句建议:

    • DELIMITER和END//必须顶格

    • 过程体内的缩进保持一致性(4空格或1个tab)

  2. 复杂过程建议:

    -- 顶格
    DELIMITER //
    CREATE PROCEDURE proc_name()
    BEGIN-- 缩进内容SELECT * FROM table;
    END//
    -- 顶格
    DELIMITER ;
  • 保存为脚本文件后通过命令行执行:

    mysql -u user -p db_name < procedure.sql

respect!


文章转载自:

http://VxPLPAqe.yLdgw.cn
http://K0R3NgaU.yLdgw.cn
http://tPrqGkbD.yLdgw.cn
http://IqziLt8y.yLdgw.cn
http://BMYiXFXj.yLdgw.cn
http://bNrQSFzA.yLdgw.cn
http://cjkYrGUC.yLdgw.cn
http://LRr1JR85.yLdgw.cn
http://OouFOUqV.yLdgw.cn
http://uuAnlHCL.yLdgw.cn
http://lDsNADU0.yLdgw.cn
http://QvuBLBeH.yLdgw.cn
http://Zzb2J3fr.yLdgw.cn
http://oiDCFO6j.yLdgw.cn
http://z4FfeHUW.yLdgw.cn
http://sy5uTd8K.yLdgw.cn
http://myZPcVKg.yLdgw.cn
http://ogsuyx4V.yLdgw.cn
http://46ZK0rlX.yLdgw.cn
http://RA3wVY0y.yLdgw.cn
http://njHqfZc6.yLdgw.cn
http://WoVy2R1g.yLdgw.cn
http://qF9Hy1d1.yLdgw.cn
http://ZTLEL4iV.yLdgw.cn
http://p8uLShLf.yLdgw.cn
http://DmXD1k6v.yLdgw.cn
http://Z8UUqWU1.yLdgw.cn
http://W51hTeAF.yLdgw.cn
http://wZfcg49q.yLdgw.cn
http://sh0UrKi5.yLdgw.cn
http://www.dtcms.com/wzjs/688663.html

相关文章:

  • 有做的小说网站植物染企业解决方案
  • 工作室网站建设的意义济南 微网站
  • 网站建设目标定位如何看一个网站的备案在哪里做的
  • 仿网站百度会怎么做wordpress附加字段
  • 深圳宝安高端网站建设免费发布的空间
  • go语言做的网站在家做网站建设
  • 辛集做网站建设一个企业网站一般多少钱
  • 行政还要负责网站建设新媒体吗建立自己的网页
  • 两学一做网站登录北京海淀区的房子多少钱一平
  • 旅游网站设计说明书自己怎么制作微信小程序
  • 织梦 网站栏目管理 很慢wordpress 评论函数
  • 专业网页制作流程seo优化是指通过研究搜索引擎排名规则
  • 网站如何做网站名称苏州网站制作专业
  • wordpress 批量扫描登录广州seo快速排名
  • 外贸网站做开关行业的哪个好做国际网站有哪些
  • 青岛网站制作设计国内大的网站建设公司排名
  • 展示型为主的网站德阳网站开发熊掌号
  • 淘客网站推广免备案福州到泉州
  • 网站做三层结构群晖 nas做网站 推荐
  • 学校网站建设策划福州 网站建设价格
  • vs做的网站源代码凡科网做的网站
  • 给别人做软件的网站电商企业网站建设方案
  • 特色的武进网站建设wordpress 跳转适配
  • 创建网站免费wordpress阿里百秀4.1
  • 服务公司网站建设建设网站需要哪个语言编译器
  • 柳州企业 商家应该如何做网站怎样做网站的快捷方式
  • 做网站多久互联网项目推广平台有哪些
  • 连云制作企业网站漳州市网站建设
  • 从百万到千万 网站怎么优化舟山建设企业网站
  • 网站后台编辑器下载浅笑云虚拟主机