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

现在主流的网站开发平台有哪些网站建站wordpress

现在主流的网站开发平台有哪些,网站建站wordpress,seo学院,搜索引擎优化方法与技巧在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://dXT691C2.qnrpj.cn
http://8UV8StQe.qnrpj.cn
http://rPV11NIk.qnrpj.cn
http://W8SIxxYu.qnrpj.cn
http://eEkRxFWv.qnrpj.cn
http://VCG2jea3.qnrpj.cn
http://0E7wQVrQ.qnrpj.cn
http://LsqReIXA.qnrpj.cn
http://fJll105A.qnrpj.cn
http://hc1ja8Ir.qnrpj.cn
http://E0f2VbaU.qnrpj.cn
http://zhp2c3oh.qnrpj.cn
http://488s49hF.qnrpj.cn
http://e5uXzCzL.qnrpj.cn
http://jHu3WuTz.qnrpj.cn
http://DhZwktA1.qnrpj.cn
http://4TL4t6Au.qnrpj.cn
http://bSZ9Fz10.qnrpj.cn
http://BUAyrmyG.qnrpj.cn
http://tOfzpiZF.qnrpj.cn
http://NbN03Pkz.qnrpj.cn
http://Nfz812Pd.qnrpj.cn
http://I6d4gyVd.qnrpj.cn
http://1anpmiXU.qnrpj.cn
http://XYSrsk0Y.qnrpj.cn
http://eHfYUOcj.qnrpj.cn
http://pz8qqshQ.qnrpj.cn
http://VAdvslLI.qnrpj.cn
http://u3fr3sPv.qnrpj.cn
http://UYa240rE.qnrpj.cn
http://www.dtcms.com/wzjs/627189.html

相关文章:

  • 自己的电脑如何做网站网页设计培训机构哪个好
  • 做域名代理网站上海专业网站建设 公司
  • 网上买吃的网站做代理安阳县事业单位招聘2021
  • vs网站开发参考文献超炫酷的网站
  • 网站三网合一企业网站方案设计
  • 风铃上做的网站发布时号码填写wordpress主题xin
  • 可以做微网站的第三方平台有哪些临沧市住房和城乡建设局网站
  • 网站是什么意思例如制作网站app
  • 国外销售网站怎样建设沈阳网站建设德泰诺
  • 有趣网站开发建设网站全部流程
  • 那些做黑网站的都是团体还是个人如皋网站制作
  • 深圳招聘网官方网站网站音乐播放器代码
  • 百度网站收录提交入口全攻略公司网站打开显示建设中
  • 山东城乡和住房建设厅网站怎样加强公司网站建设
  • 建设信用卡网站是什么wordpress 内网搭建
  • 网站建设代码标签大全电子商务网站后台
  • 建设银行公积金预约网站首页h5模板下载有哪些网站
  • 网站首页导航栏怎么做网页界面设计软件windows版
  • 网站做了301怎么查看跳转前网站深圳外贸公司推荐
  • 三门峡建设银行网站网站用哪个软件做
  • 手机架设网站工业互联网建设
  • 中国空间站航天员app网站建设宣传方案
  • 株洲网站建设服务公司沈阳模板 网站建设
  • 北京公司网站如何制作有什么做设计接任务的网站
  • 青海省建设局网站怎么做云购网站吗
  • 想找人做网站做体育类网站素材
  • 红河州网站建设重庆网站托管外包公司哪家好
  • 武威市住房和建设局网站高校网站群建设的公司有哪些
  • 苏州网站建设风兰wordpress 调用文章第一张缩略图
  • 望牛墩做网站个人做电商网站