DataGrip使用进阶-代码提示及格式化(二)

本文介绍了 DataGrip 中提高 SQL 编写效率的六个实用技巧,包括变量重命名、自动检测无法解析的对象、权限定字段名、*通配符自动展开、大写自动转换及 SQL 格式化等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

转载自 http://ywu.iteye.com/blog/2341844

1、变量重命名

鼠标点击需要重命名的变量,按下Shift+F6快捷键,弹出重命名对话框,输入新的名称



 2、自动检测无法解析的对象

如果表名、字段名不存在,datagrip会自动提示,此时对着有问题的表名或字段名,按下Alt+Enter,会自动提示是否创建表或添加字段



 3、权限定字段名

对于查询使用表别名的,而字段中没有使用别名前缀的,datagrip能自动添加前缀,鼠标停留在需要添加别名前缀的字段上,使用Alt+Enter快捷键



 4、*通配符自动展开

查询的时候我们会使用select *查询所有列,这是不好的习惯,datagrip能快速展开列,光标定位到*后面,按下Alt+Enter快捷键



 5、大写自动转换

sql使用大写形式是个好的习惯,如果使用了小写,可以将光标停留在需要转换的字段或表名上,使用Ctrl+shift+U快捷键自动转换

 

6、sql格式化

选中需要格式化的sql代码,使用Ctrl+Alt+L快捷键

在 JetBrains 的 **DataGrip** 中,代码格式化是一个非常实用的功能,尤其在编写和维护 SQL 查询时。DataGrip 支持多种数据库(如 MySQL、PostgreSQL、SQL Server 等),并提供了强大的 SQL 格式化工具,可以自动美化 SQL 代码,使其更易读、结构更清晰。 DataGrip 使用 **SQL Formatter** 来格式化 SQL 代码。你可以通过以下方式使用代码格式化功能: --- ### ✅ 使用快捷键格式化 SQL 代码 - **Windows/Linux**: `Ctrl + Alt + L` - **macOS**: `Cmd + Option + L` --- ### ✅ 自定义格式化规则 你可以自定义 SQL 格式化规则以满足团队规范或个人喜好: #### 步骤如下: 1. 打开设置: - **Windows/Linux**: `File → Settings` - **macOS**: `DataGrip → Preferences` 2. 进入: ``` Editor → Code Style → SQL ``` 3. 在这里你可以设置: - 关键字大小写(如 `SELECT`, `FROM`, `WHERE`) - 缩进方式(空格或 Tab) - 每行最大字符数 - 是否在逗号后换行等 4. 你还可以导出/导入格式化配置,方便团队统一风格。 --- ### ✅ 示例:格式化前 vs 格式化后 #### 格式化前(杂乱): ```sql select * from users where id=1 and name='john'; ``` #### 格式化后(整洁): ```sql SELECT * FROM users WHERE id = 1 AND name = 'john'; ``` --- ### ✅ 使用宏或脚本批量格式化多个 SQL 文件(可选) 如果你有多个 `.sql` 文件需要格式化,可以通过写脚本调用 DataGrip 提供的命令行工具来实现。但目前 DataGrip 本身并没有官方的 CLI 工具,不过你可以结合外部 SQL 格式化工具(如 `sqlformat`、`pgFormatter` 等)来实现。 #### 示例:使用 Python 的 `sqlparse` 格式化 SQL ```bash pip install sqlparse ``` ```python import sqlparse sql = "select * from users where id=1 and name='john';" formatted_sql = sqlparse.format(sql, reindent=True, keyword_case='upper') print(formatted_sql) ``` 输出结果: ```sql SELECT * FROM users WHERE id = 1 AND name = 'john'; ``` --- ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值