sql生成器--生成含注释的sql语句

首先,我交代一下使用环境,我使用的数据是oracle,使用pl/sql dev开发sql语句。在pl/sql dev上面,短sql是比较好实现的,但是要写长sql的时候就很麻烦了,先写好sql,然后一条一条增加注释,增加注释这一步效率真的很低。很久之前碰到写长sql的时候,就已经产生了要实现一个自动生成含有注释的sql小工具,只是可惜一直都没有动手。

最近我要开发一个新的模块,需要写一些简单的sql,比如插入、查询和更新语句。借着最近要开发模块的干劲,我就写一个sql生成器。sql生成器的功能就是自动生成插入、查询和更新的sql语句,语句字段必须包含注释。写过sql的都知道,注释需要一个一个的复制粘贴或者打字,这样效率很低,也容易出错。我的sql生成器可以避免这个问题。

sql生成器的实现过程。

(1)数据存取:

oracle数据有自带的视图包含表的字段和字段注释,我们需要关联视图user_tab_columns和user_col_comments,只需要选取字段名称、数据类型、精度和注释四个字段就可以了,表名作为条件参数。详细的sql如下:

<span style="white-space:pre">				</span>select tc.column_name as column_name,
                                       tc.data_type as data_type,
                                       tc.data_length as data_length,
                                       cc.comments as comments
                                  from user_tab_columns tc, user_col_comments cc
                                 where tc.table_name = cc.table_name
                                   and tc.column_name = cc.column_name
                                   and tc.table_name = '{0}'
(2)业务实现:

sql生成器的功能,数据库连接设置,需要输入数据库用户名、密码和数据源;查询表字段,显示到datagridview上;可以选择字段,生成sql。查询语句select和更新语句update还需要条件功能。当前条件能够还是不够完善,查询语句,我们可以生成主要的部分,条件语句手写。如下图所示:


(3)生成sql语句

我没有在界面显示生成的sql语句,而是通过写txt文件。这个功能需要注意的就是sql的语法问题,insert、update要区分字符、数字或者日期类型。txt的生成是通过Logo日志类来实现。

(4)下载地址

点击打开链接


最新升级请看最近升级


一、简介 1.1前言 1、由于最近工作一直用Oracle,故对Oracle数据库研究为对象。 2、根据工作业务需求实际情况进行功能研发。为什么要开发呢?因为在数据库升级或者迁移的时候,为了保证不同环境不同数据库数据保持同步,故数据库SQL脚本非常作用。比如:数据库主脚本,副脚本,增量脚本。 3、 什么是主脚本、副脚本、增量脚本呢? 3.1、主脚本指数据库表或存储过程,视图脚本,序列等脚本。 3.2、副脚本指必须执行主脚本之后才执行的脚本。换句话说在没执行主键脚本的情况下,副脚本执行之后会回滚事务失败。 3.3、增量脚本指在执行主脚本或副脚本之后,根据需求对某个表添加/修改约束(主外键约束,长度约束等),添加/修改字段/添加数据等情况对数据库结构改变处理的一种行为脚本。 1.2作用 1、 快速产出自定义规则需要的SQL脚本。 2、减少人工编写SQL脚本出错率问题,完全通过程序检测SQL准确性。 3、帮助开发人员提高SQL编写效率,减少人工编写SQL开发成本问题。 4、帮助开发人员节约时间,同时避免繁琐不必要编写SQL的工作。 二、实现方式与原理 2.1实现方式 1、实现方式分:正向与逆向实现。什么是正向与逆行呢【是否有鸡还是有蛋,先后道理同等】 2、正向方式:首先把设计好数据库表文档,把所有表的字段属性配置到EXCEL或者CSV格式的文件通过JXL/POI技术去读取文件的字段,再通过其他技术一系列程序处理之后生成所需要的SQL脚本。 3、逆向方式:首先有数据库表,然后通过ORM持久化技术连接数据库再读取表的字段等属性出来,再通过其他技术一系列程序处理之后生成所需要的SQL脚本。 2.2原理 对数据库软件内置核心表或视图查询出来存储用户行为表结构所有属性信息,对此属性结构信息进行分析与组装所需要SQL脚本。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

panliuwen

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值