递归火山软件开发平台

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
热搜: 火山 源码 类库
查看: 4423|回复: 5
打印 上一主题 下一主题

[视窗] 【开源】分享一个MSSQL快捷生成Insert语句的工具

[复制链接]

1

主题

66

帖子

385

积分

中级会员

Rank: 3Rank: 3

积分
385
跳转到指定楼层
楼主
发表于 2023-4-13 17:32:26 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 xq45654 于 2023-4-13 17:37 编辑

最近用MSSQL开发项目遇到个很头疼的问题,因为有些数据表中字段太多了所以写SQL语句非常麻烦,变量名、单引号、加号、双引号、括号、顿号全靠手动拼接,可读性差、效率低下、伤肝、伤眼、耗时长且极其容易出错,其他语句都还好因为不用写太长,但就是Insert使用最令人头疼,一个表几十个字段有int和varchar混合的这种还要考虑varchar值加入单引号否则分分钟出错,憋了十几分钟写出一条上千个字符的语句结果调试运行失败,然后再花几十分钟来排查到底哪里符号或空格写多了、写少了、写错了,简直地狱般的撸码体验!!!
~于是我花了两天时间写了一个Sql Insert语句的全自动生成工具来彻底解决了这个问题,此工具可以将字段名作为变量字段值来定义,支持加入自定义变量前缀,只需要在火山中定义这个变量名再赋值即可实现快速Insert插入,字段再多的语句也可以一秒完成并且绝不会出错!


SQL语句生成.zip (638.86 KB, 下载次数: 19)

目前工具有以下功能:

1、【自动检索】在‘功能.v‘文件中的常量类里修改你的Sql连接信息,软件启动会自动枚举所有数据表,点击一个表可以查看该表的所有字段名称;
2、【自动识别文本字段】在生成Insert语句时会自动识别’varchar(max)’的字段类型并在字段值中自动添加单引号;
3、【可自定义变量前缀】可以自行定义字段值变量的命名方法,在每个字段值变量前加入文本前缀,使用时只需要定义前缀+字段值的变量即可完美适配全自动生成的Sql语句;
4、【字段值可快捷赋0值】在生成Insert语句后你可以点击字段列表中的字段名称按钮将Sql语句中的该字段值赋值为’0’值

说明:
1、本软件只支持Sql sever,若想支持其他数据库请自行二开!
2、如果数据表定义了自增ID作为主键的字段那么软件也会自动将该字段写进去,需要手动操作删除即可!



回复

使用道具 举报

444

主题

1万

帖子

4万

积分

超级版主

Rank: 8Rank: 8

积分
40533
沙发
发表于 2023-4-13 18:07:57 | 只看该作者
可以的。很强
安卓无障碍实战课:点击查看
交流群:641526939
回复

使用道具 举报

1

主题

118

帖子

2569

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2569
板凳
发表于 2023-4-13 21:25:33 | 只看该作者
感谢分享,学习来了
回复

使用道具 举报

6

主题

64

帖子

2597

积分

金牌会员

Rank: 6Rank: 6

积分
2597
地板
发表于 2023-4-13 22:02:54 | 只看该作者
可以尝试下我封装的这个ORM类库,支持MYSQL、SQLite、PostgreSQLORMPP
优点是通过定义一个结构体来操作数据,简单的操作,不需要再写SQL语句。
缺点是目前对多表操作支持不佳,也不支持一些谓词,不过我在类库中增加了生成SQL的辅Zhu方法。
火山PC交流群: 748413192
回复

使用道具 举报

15

主题

299

帖子

2025

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
2025
5#
发表于 2023-4-13 22:16:33 | 只看该作者
谢谢分享,学习一下
回复

使用道具 举报

36

主题

193

帖子

1187

积分

核心用户

Rank: 9Rank: 9Rank: 9

积分
1187
QQ
6#
发表于 2023-4-13 22:22:13 | 只看该作者
谢谢分享
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|递归火山软件开发平台 ( 鄂ICP备18029190号 )

GMT+8, 2024-11-24 14:31 , Processed in 0.090612 second(s), 21 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表