问题描述

由于Format Sql默认使用php脚本,会提示错误:


原因是目前的mac系统(macos 12.5)中缺少php程序。第一时间想到是用本人电脑里已有的python来处理格式化,没去安装php。

配置python脚本(仍有问题)

修改 Bundles 》Format 》Format SQL 配置ruby脚本

#!/opt/homebrew/bin/python3
# encoding=utf-8import urllib.request
import json
import syssql = sys.stdin.read()
params = {'sql': sql, 'reindent': 1,'keyword_case': 'upper', 'identifier_case': 'lower'}req = urllib.request.Request('https://sqlformat.org/api/v1/format', data=urllib.parse.urlencode(params).encode('utf-8'))
response = urllib.request.urlopen(req)data = json.loads(response.read())
print(data['result'])

新的问题出现了:无权限调用python执行

官方issue中也提出了这个bug,还是open状态。

根据作者的建议,目前ruby还是支持在sandbox中调用的,于是改了脚本测试下,果然成功了。

ruby将来也可能会被系统移除,继续关注官方issue吧。

配置ruby脚本(已解决)

修改 Bundles 》Format 》Format SQL 配置ruby脚本

#!/usr/bin/ruby
# encoding=utf-8require "json"
require "open-uri"
require 'net/https'sql = $stdin.read()params = {'sql': sql, 'reindent': 1,'keyword_case': 'upper', 'identifier_case': 'lower'}url = 'https://sqlformat.org/api/v1/format'  uri = URI(url)
http = Net::HTTP.new(uri.host, uri.port)if uri.scheme == "https"http.use_ssl = truehttp.verify_mode = OpenSSL::SSL::VERIFY_NONE end
req = Net::HTTP::Post.new(uri.path)
req.set_form_data(params)
res = http.request(req)
json_body = JSON.parse res.body
puts json_body['result']

sequel ace 无法格式化sql(使用ruby替代php脚本解决问题)相关推荐

  1. Sequel Ace 数据库管理工具 mac os使用(导出数据库)

    基于mac os的Sequel Ace 数据库管理工具 废话不多说,直接上图(下载安装) MySql自行百度安装,(打开终端,如下就是成功启动) 打开Sequel Ace管理工具,按图填写 impor ...

  2. 格式化 SQL 来提高效率

    本文由 伯乐在线 - cucr 翻译,黄利民 校稿.未经许可,禁止转载! 英文出处:msiman.ga.欢迎加入翻译小组. 背景 已格式化的SQL并不比未格式化SQL运行地更快.数据库可能真的不太在意 ...

  3. DataGrip快捷键(执行SQL、格式化SQL)

    Ctrl+Enter 执行SQL Ctrl+Alt+L 格式化SQL 注:https://blog.csdn.net/AlbenXie/article/details/101200842

  4. Java中如何解析SQL语句、格式化SQL语句、生成SQL语句?

    昨天在群里看到有小伙伴问,Java里如何解析SQL语句然后格式化SQL,是否有现成类库可以使用? 之前TJ没有做过这类需求,所以去研究了一下,并找到了一个不过的解决方案,今天推荐给大家,如果您正要做类 ...

  5. SQL高级语句-SQL 通配符-在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符。

    SQL 通配符 在搜索数据库中的数据时,SQL 通配符可以替代一个或多个字符. SQL 通配符必须与 LIKE 运算符一起使用. 在 SQL 中,可使用以下通配符: 通配符 描述 % 替代一个或多个字 ...

  6. (资源免费)Sublime Text 3如何格式化json文本+格式化Sql语句

    Sublime Text 3如何格式化json文本+格式化Sql语句 下面由sublime教程栏目给大家介绍sublime text3格式化json,希望对需要的朋友有所帮助! 问题研讨 当前后端对接 ...

  7. DBeaver 格式化sql

    有时候我们拿到了一条sql语句是长长的,非常不容易阅读,这时我们就想说哪里可以格式下sql代码. 方法有很多种,这里我就用Dbeaver来格式化sql. ①打开Dbeaver ②复制sql代码到SQL ...

  8. mysql与appace_MacOS 的 MySQL 数据库管理客户端 -- Sequel Ace

    Sequel Ace 是长期使用的 MacOS 工具 Sequel Pro 的续集,Sequel Pro 是一款许多开发人员管理 MySQL 和 MariaDB 数据库的热门应用. Sequel Ac ...

  9. SQL Server 监控统计阻塞脚本信息

    数据库产生阻塞(Blocking)的本质原因 :SQL语句连续持有锁的时间过长 ,数目过多, 粒度过大.阻塞是事务隔离带来的副作用,它是不可避免的,而且是一个数据库系统常见的现象. 但是阻塞的时间和出 ...

最新文章

  1. 王二涛团队及合作者揭示沙棘放线菌固氮生物学机制
  2. mysql repalication_mysql replication(主从复制)(一)MS模式
  3. .NET程序在Linux容器中的演变
  4. Python学习并发与多线程
  5. 运维自动化之ansible playbook安装apache
  6. servlet中getWriter和getOutputStream的区别
  7. android p wifi一直在扫描_在Android上的每次WiFi扫描之间我应该使用什么时间间隔?...
  8. spring(11)使用对象-关系映射持久化数据
  9. js for in 遍历对象与数组
  10. zeros什么意思_ma=zeros(n);是什么意思'
  11. docker 启动成功但无法访问_docker nginx 运行后无法访问的问题解决
  12. Centos KVM 基本安装过程
  13. 解决service iptables save出错please try to use systemctl.
  14. Spark 学习(三) RDD基本介绍
  15. 《HTML5和JavaScript Web应用开发》——2.6 QA和设备测试
  16. java 修改分辨率_JAVA程序分辨率修改及自适屏修改
  17. 用c语言写图书管理系统设计,C语言图书管理系统设计及实现.doc
  18. CA数字证书包含哪些文件?如何查看SSL证书信息?
  19. 创建Django项目及配置
  20. python实现excel到word转换

热门文章

  1. 直播app源码,Python发文本/图片/附件邮件
  2. windows 系统的copy命令
  3. python数据增强三种方法
  4. 外星人入侵(使用python编写)
  5. 软件设计模式--第二章 创建型模式--建造者模式
  6. 谁帮忙用C#实现下这个加解密函数
  7. 浅谈onlyoffice文档协作在工程设计中的应用——共享excel计算书
  8. gin框架学习-Casbin入门指南(ACL、RBAC、域内RBAC模型)
  9. 物理搬砖问题_DNF格蓝迪包工头,解读搬砖常见问题
  10. Spring 全家桶BeanDefinition资源定位解析-立哥技术