将数据文件导入数据库是进行大数据分析的前提。被审计单位提供的数据文件中常常包含SQL文本格式,审计人员需要将其迅速、准确地导入数据库系统。
在某审计项目中,被审计单位提供的SQL文本文件约5.7GB,包含600余万条Insert语句记录。审计组试图把文件的后缀改成CSV,再用WPS打开,手动将其转换成数据表,但因为该文件较大,WPS记事本等常规办公软件根本无法打开,更无法对其进行操作和编辑,数据导入工作陷入了困境。
“既然这样大小的SQL文件无法打开编辑,那么它一定是从数据库系统导出数据时自动生成的。”笔者在用Oracle的SQL Developer进行导出测试操作后印证了这一点。“既然此文件能够被导出,那一定有办法直接将其导入。”经过学习,笔者很快找到了方法,主要步骤包括:一是在数据库中新建数据表。在SQL Developer中编写并执行Create新建表的SQL语句,即可新建目标数据表。二是使用SQL Plus工具登录数据库。先打开SQL Plus命令行工具,再输入用户名(如SYSTEM)及密码进行登陆。三是导入SQL文本数据。输入符号@加SQL文件路径,例如“@C:\Desktop\1.sql”,其中“C:\Desktop\1.sql”为SQL文件路径。此时ORACLE数据库将执行SQL文件脚本。四是提交保存结果。当SQL文件脚本执行完毕之后,输入commit,对执行结果进行保存。
图一:在Oracle中以命令行方式导入SQL文本
此方法是否适用于其它种类的数据库系统?答案是肯定的。对比此方法在不同的数据库环境中的实际操作,除了在第二步操作“登录数据库”时,登录的命令有区别之外,如登录神通数据库的命令为“isql -d osrdb -p2003 -U sysdba/szoscar55”,其中“sysdba”为用户名,“szoscar55”为密码,其余步骤的操作均与Oracle环境下的操作完全一致。笔者使用该方法成功地将SQL文本数据导入国产统信操作系统环境下的神通数据库中。

图二:在神通数据库中以命令行方式导入SQL文本
(杨宁夫)