Sequel自动生成Select语句
Sequel 是 Mac 上的一款不错的 mysql 可视化编辑, 它有一个非常好的功能是可以定制自己的插件, 这就是Bundles。 利用这个功能可以生成自己常用的SQL, 提高效率。 查询语句是最常用的, 下面就自己动手写了一个, 具体步骤如下:
1. 在顶部菜单栏点击 Bundles -> Bundles Editor 进入Bundles 编辑器
2. 左侧树形结构, 点击 Input Field 行Show (鼠标放上去才会显示show)
3. 点树形菜单底部的 + 号, 新增一个Bundle
4. 在新增的Bundle里, 配置Bundle 选项:
# Bundle Scope: Input Field
# Menu Label: General Select SQL
# Output : Insert as Text
# 可以配置快捷键
注意:Scope 的选择的不对,会影响Output的配置项里没有Insert as Text
5. Command内容在代码区。 代码是使用的Shell + Perl 来实现的
6. 保存后就可以通过菜单选择、快捷键来使用了
注意:使用的时候, 焦点必须放在Run Query 区域, 否则会因为SQL没有地方放置而生成失败
解决办法:可以配置Output 为 Show as HTML, 这样会弹出个小框来展示生成的SQL,选择哪一种看个人喜好。
参考链接:
1. https://sequelpro.com/docs/bundles/bundle-editor
2. https://github.com/mattlangtree/Bundles
# Check if one table is selected
if [ -z "$SP_SELECTED_TABLE" ]; then
echo "<font color=red>Please select a table.</font>"
exit $SP_BUNDLE_EXIT_SHOW_AS_HTML_TOOLTIP
fi if [ -z $SP_PROCESS_ID ]; then
echo "<font color=red>No front most connection window found!</font>"
exit $SP_BUNDLE_EXIT_SHOW_AS_HTML_TOOLTIP
fi # send query to Sequel Pro
echo "SELECT COLUMN_NAME FROM information_schema.columns WHERE TABLE_NAME ='${SP_SELECTED_TABLE}'" > "$SP_QUERY_FILE" # execute the SQL statement; the result will be available in the file $SP_QUERY_RESULT_FILE
open "sequelpro://$SP_PROCESS_ID@passToDoc/ExecuteQuery/csv" # wait for Sequel Pro; status file will be written to disk if query was finished
while [ ]
do
[[ -e "$SP_QUERY_RESULT_STATUS_FILE" ]] && break
sleep 0.01
done # check for errors
if [ `cat $SP_QUERY_RESULT_STATUS_FILE` == ]; then
echo "Nothing found to SELECT ${SP_SELECTED_TABLE}"
exit $SP_BUNDLE_EXIT_SHOW_AS_HTML_TOOLTIP
fi # remove file hand shake files
rm -f $SP_QUERY_RESULT_STATUS_FILE
rm -f $SP_QUERY_FILE # process the result
cat $SP_QUERY_RESULT_FILE | perl -e ' # title
$firstline = <>; # column
chomp(my @file=<>);
my $columns = join(", ", @file);
$columns =~ s/"/`/g;
print "SELECT $columns FROM $ENV{'SP_SELECTED_TABLE'}\n" '
Sequel自动生成Select语句的更多相关文章
- 使用Excel自动生成sql语句
在近一段日子里,进入了新的项目组,由于项目需要,经常要将一些Excel表中的数据导入数据库中,以前并没有过多的接触过数据导入与数据处理,对于我来说比较痛苦,今天下午花了几个小时处理数据,但是同事给我提 ...
- 利用反射自动生成SQL语句(仿Linq)
转:http://www.cnblogs.com/the7stroke/archive/2012/04/22/2465597.html using System; using System.Colle ...
- 谨慎使用MyBatis自动生成Where语句
最近监控到类似这样一个慢查询: select XX_time from XXOrderInfo WHERE ( OrderId is not null and OrderId = N'xxxx') x ...
- springboot+mybatis+mysql 利用mybatis自动生成sql语句
工具和环境 idea,mysql,JDK1.8 效果图如下 结构图如下 java resources sql文件 /* Navicat MySQL Data Transfer Source Serve ...
- 利用sql 存储过程把表中内容自动生成insert语句
选中所在数据库 执行创建存储过程的sql CREATE proc [dbo].[spGenInsertSQL] (@tablename nvarchar(256),@sqlwhere varchar( ...
- Excel 提供数据 更新或者插入数据 通过函数 自动生成SQL语句
excel 更新数据 ="UPDATE dbo.yt_vehicleExtensionBase SET yt_purchase_date='"&B2&"' ...
- navicat自动生成DDL语句
场景:当我们在开发库修改表结构之后,需要把这些表结构的变化同步更新到生产库,这时候可以在Navicat中copy表结构变更的SQL语句. 当你点击了“设计表”进行修改表结构,在保存表结构之前点击“SQ ...
- 根据DELTA自动生成SQL语句
上传客户端的CLIENTDATASET.delta到服务器的clientdataset.data,服务端解析clientdataset的数据生成相应的SQL语句. 相对于直接调用datasetprov ...
- 城市联动 - 自动生成SQL语句
字段比较简单/ 如果有需要可以自己定制字段和排序/ 一共二级城市联动, 本人业务需要, 所以就两层, 网上关于三层的挺多, 有需要可以借鉴/ 废话不多说, 先看效果图, 代码在下面 <?php ...
随机推荐
- linux下播放组播流出现setsockopt:No such device错误
在linux下播放组播流出现setsockopt:No such device错误是因为多播IP没有add路由表里面 可以采用如下命令完成: root@android:/ # busybox rout ...
- linux上 java 使用 javasqlite
linux上 java 使用 javasqlite http://www.ch-werner.de/javasqlite/ 1) 下载: http://www.ch-werner.de/javasql ...
- Linux常用命令(第二版) --帮助命令
帮助命令 1.man[manual]: /usr/bin/man 获得命令或配置文件的帮助文档,优先查看命令的帮助 格式:man [命令或配置文件] #会同时调用more E.g. man ls # ...
- ubuntu下搭建gtk+编程环境
首先gtk+项目主页为: http://www.gtk.org/ gtk+现在有2和3两种版本,使用 sudo apt-get install gnome-core-devel 可以一次性安装2个版本 ...
- CUDA版本的OpenCL在windows 7的下编程初步
参考文献: http://blog.csdn.net/neoxmu/article/details/8866928 我安装的是CUDA5.5,代码如下: //#include "stdafx ...
- CUDA跟OpenCV的混合编程,注意OpenCV需要重新编译
1.注意事项 编译的办法参见: http://blog.csdn.net/wangyaninglm/article/details/39997113 以下是程序代码,网上搜的例子: 注意事项:32 ...
- webapi从入门到放弃(一)OWIN 自寄宿模式
1.创建web空项目 2.创建完如图 3.安装如下程序包Microsoft.AspNet.WebApi.Core (5.2.4)Microsoft.Owin.Host.SystemWeb (4.0. ...
- 如何用Go语言实现汉诺塔算法
package main import ( "fmt" ) func print(n int,x rune,y rune)(){ fmt.Printf("moving d ...
- Python高阶函数之 - 装饰器
高阶函数: 1. 函数名可以作为参数传入 2. 函数名可以作为返回值. python装饰器是用于拓展原来函数功能的一种函数 , 这个函数的特殊之处在于它的返回值也是一个函数 , 使用pyth ...
- Mac下通过brew安装指定版本的nodejs
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 24.0px "PingFang SC Semibold"; color: #2c303 ...