文件的目录结构如下:
执行流程:点击bat文件开始执行脚本,往数据库中插入记录
① 20150404__TEST_01.bat
② 20150404__TEST_01entrance.sql
③ produsr_dml_fshitd88_20150404.sql
分析:
0. 首先有如下测试表结构:
create table product(
id number primary key,
prod_code varchar2(20),--产品编码
prod_name varchar2(20),--产品名
price number(10,2)--价格
);
1. 20150404_TEST_01.bat 文件中的内容如下:
echo begin ①
sqlplus -l system/niit@ORCL @G:\workspace\buildSqlParse\20150404_TEST_01\20150404_TEST_01entrance.sql > G:\workspace\buildSqlParse\20150404_TEST_01\20150404_TEST_01result.txt; ②
echo end ③
pause; ④
说明:① echo是DOS命令,可以在DOS窗口输入help查看,在这里用于在DOS窗口输出提示信息“begin”
② a. -l : sqlplus命令的可选项,可以使用:sqlplus -help 命令在DOS窗口查看可选项l的作用: 只尝试登录一次, 而不是在出错时再次提示输入用户名及密码。
b. sqlplus username/password@ORCL as sysdba : 以sysdba的身份登录到数据库ORCL(在oracle服务器上可能会创建多个库,在这里登录到库ORCL) ,默认的为normal 身份。
c. @G:\workspace\buildSqlParse\20150404_TEST_01\20150404__TEST_01entrance.sql 其中 @ 表示执行指定脚本中SQL*Plus语句
d. > G:\workspace\buildSqlParse\20150404_TEST_01\20150404__TEST_01result.txt 其中 > 表示把 命令执行 所得到的东西输出到指定文件中
③ 在这里用于在DOS窗口输出提示信息end
④ 停止批处理文件的处理并显示信息。
2. 20150404_TEST_01entrance.sql 文件中的内容如下:
--当SQL 命令或 PL/SQL 块发生错误时,先执行rollback再退出SQL*Plus,并且返回一个错误码
WHENEVER SQLERROR EXIT SQL.SQLCODE rollback
--当发生系统异常时退出SQL*Plus
WHENEVER OSERROR EXIT
--控制 SQL*Plus 不进行扫描命令中的替换变量并用它们的值进行替换。
SET DEFINE OFF
--这个命令与 @(“at”符号)命令类似。所不同的是在执行嵌套的脚本时,它会在与调用它的脚本相同的路径或url 中查找要执行的脚本。
@@G:\workspace\buildSqlParse\20150404_TEST_01\produsr_dml_fshitd88_20150404.sql;
--quit与exit是同一词,这里可以将exit删除
quit;
exit;
3. produsr_dml_fshitd88_20150404.sql文件中的内容如下:
set pagesize 0 ①
set heading off ②
set feedback on ③
set linesize 2000 ④
spool D:\SQL_EXECUTE_LOG\produsr_dml_fshitd88_20150404.log ⑤
select * from product;
insert into product(id, prod_code, prod_name, price) values(seq_product.nextval, 'PROD1001', '方便面', '4.5');
insert into product(id, prod_code, prod_name, price) values(seq_product.nextval, 'PROD1001', '辣条', '3.5');
select * from product;
Commit;
spool Off
说明:①设置每页能够显示的行数。可把 PAGESIZE 设为0以禁止显示所有的标题、分页符、页顶部的空行和其它的格式内容。
② 不显示列标题
③ 返回多少行受影响
④ 控制SQL*Plus在一行中最多能够显示的字符数
⑤ 执行sql语句的输出日志
4.双击20150404__TEST_01.bat执行批处理,会在当前目录下生成结果文件20150404_TEST_01result.txt,里面内容如下:
二. 编写代码实现自动执行SQL文件
问题:如何实现根据produsr_dml_fshitd88_20150404.sql来生成20150404__TEST_01.bat ,20150404__TEST_01entrance.sql 文件?
- 大小: 15.9 KB
- 大小: 11.8 KB
分享到:
相关推荐
总而言之,BuildSQL是一款集多功能于一体的数据导出工具,无论是在日常的数据备份、迁移,还是在项目协作、数据分析中,都能发挥重要作用。通过熟练掌握BuildSQL的使用,IT专业人士可以更加高效地管理和利用数据,...
- 数据分析师:在处理大量数据时,利用该工具可以更高效地提取所需信息。 - 系统管理员:在维护数据库时,快速生成更新或备份数据库的SQL语句。 五、总结 BuildSQL.exe作为一款强大的SQL语句生成器,它的存在极...
在这个场景中,我们可以理解"BuildSql Refactor"可能是提供自动或辅助SQL优化的工具,它可能包含代码分析、建议改进等功能。 【描述】虽然描述部分是空的,但根据提供的博客链接...
在IT行业中,数据库管理是至关重要的任务之一,而...无论是进行常规的数据查询,还是进行复杂的数据分析和维护,buildsql都能成为你得力的助手。在实际使用过程中,熟悉并善用其各项功能,将大大提高你的工作效率。
"BuildSQL.chm"很可能是这款SQL工具的用户指南,提供了关于如何使用SQL生成器和分析器的详细步骤,包括功能介绍、操作教程和常见问题解答。 5. BuildSQL.exe: 这是可执行文件,表明"BuildSQL"是这个工具的主程序...
这种工具通常包括各种功能,如查询构建器、数据库对象管理、数据导入导出、性能分析等。 描述中的“都是可以用的”意味着这个软件经过了实际测试,具有良好的稳定性和可用性,适用于不同的场景。“支持很多大型sql...
至于"BuildSQL2.0"这个压缩包文件,很可能是该SQL语句生成器的第二个主要版本。它可能包含更新的功能、改进的性能和更多的兼容性选项。用户在解压后,可以按照提供的说明安装和使用这个工具,以提升其在Delphi开发...
本文实例讲述了laravel5.6框架操作数据curd写法(查询构建器)。分享给大家供大家参考,具体如下: laravel5.6 数据库操作-查询构建器 <?...//laravel5.6 语法 demo示例 ...//命名该控制App空间下名称 ...
以下是对tp5.1框架数据库子查询操作的详细分析。 在tp5.1框架中,子查询通常可以通过两种方式实现:使用fetchSql方法或buildSql方法来构造子查询SQL语句,然后将该SQL语句嵌入到一个新的查询中;另一种则是利用闭包...
7. **导出数据**:支持将查询结果导出为CSV、Excel或其他格式,便于进一步分析。 对于初学者来说,使用SQL查询生成器可以更直观地理解SQL语法,同时也能减少语法错误。对于经验丰富的开发者,它可以在快速原型设计...
- **研究方法**:介绍系统采用的技术和开发工具,如C/S模式和BuildSQL数据库构建。 1. **第二章 系统功能分析**: - **可行性分析**:从经济、技术、操作等多个角度探讨系统的实施可能性。 - **经济可行性**:...
标题 "SQL语句自动生成器简体中文版 v2.0" 暗示这是一个专为简化SQL查询设计的工具...对于数据库管理员、数据分析师或者程序员来说,这样的工具可以极大地提高他们的工作效率,减少因为手动编写SQL语句可能出现的错误。
这可能是一个执行程序,用户运行这个程序后,可以配置数据库连接信息,选择目标开发语言,然后工具会自动分析数据库中的所有表,生成相应的Model代码。这个程序可能是图形界面应用,提供友好的交互方式,简化操作...
这个工具能自动生成SQL语句,意味着它可以分析数据库结构,根据开发者的需求生成相应的查询,从而减轻编写和调试SQL的负担。 该工具1.2.1版的更新可能包含性能优化、新功能添加或错误修复,以提供更稳定、更高效的...
5. **性能优化**:提供查询分析和优化建议,帮助提升SQL语句的执行效率。 6. **版本控制**:集成版本控制系统,方便团队协作和追踪SQL代码变更。 7. **可视化界面**:提供直观的图形用户界面,使非程序员也能轻松...
在“压缩包子文件的文件名称列表”中提到的“BuildSQL”可能是该工具的核心执行文件或配置文件。在很多开发工具中,这个名字往往代表构建SQL语句的程序或者脚本,它可能是用来根据用户的输入或定义的模型生成相应的...
从描述中我们可以推断,phpMyIDE提供了命令行界面,这为熟悉CLI操作的用户提供了额外的选择,同时,其特殊功能可能包括如数据导入导出、备份恢复、性能分析等高级特性。开源软件的特点意味着源代码可供社区审查和...