随着数字化转型的深入,数据使用场景也呈现多元化趋势。
眼下,几乎所有的信息系统都将数据存储在数据库中。除了使用客户端访问数据库之外,有时也需要直接对数据库进行访问和操作。因此,针对数据库的自动化操作也成了RPA应用中不可或缺的一环。
数据库自动化操作指的是在保证数据安全的前提下,直接使用用户名和密码登录数据库,并使用SQL语句对数据库进行操作。
关于SQL的基础知识,请参见网络上的SQL教程 →
如何操作数据库首先,需要连接数据库。
在UiBot“软件自动化”的“数据库”目录下,选择并插入一条“创建数据库对象”命令。该命令将创建一个连接指定数据库的数据库对象。
“创建数据库对象”命令有三个属性:“输出到”属性,这里填写一个变量名,这个变量会保存创建的数据库对象。
例如,填写objDatabase,后续的所有数据库操作都针对objDatabase数据库对象进行。“数据库类型”属性,指定了创建的数据库对象的类型(UiBot目前支持MySQL、SQL Server、Oracle、Sqlite3、PostgreSQL共五种数据库类型)。
“数据库配置”属性,描述了创建数据库对象时的一些关键信息,点击右边的“纸和笔”按钮,会弹出一个窗口,显示“数据库配置”的更多属性,如下图所示:
左:创建数据库对象,右:数据库配置
“host”和“port”指的是数据库的IP地址和端口号;
“user”和“password”指的是访问数据库的用户名和密码;
“database”指的是连接的数据库的名称;
“charset”指的是数据库的字符集,通常保持默认“utf8”即可。
数据库的具体配置各有不同,以上信息的配置,可以询问要访问的数据库的管理员。每种类型的数据库,其配置属性可能不完全相同。
比如Oracle数据库,没有“database”参数,只有“sid”参数,但其含义是类似的。
Sqlite3数据库跟另外三个数据库差别比较大:MySQL、SQL Server、Oracle是典型的关系型数据库,而Sqlite3是文件型数据库,因此Sqlite3的“数据库配置”属性,只有“filepath”一个子属性,指明了所操作的Sqlite3数据库文件的路径。
对于PostgreSQL数据库,“数据库配置”属性与MySQL比较略有不同,但当前仅支持关系型特性的自动化操作,PostgreSQL其他的现代特性暂不支持。成功创建数据库对象后,接下来可以对数据库进行操作了。
UiBot提供两种数据库操作:一种是查询数据,对应“执行单SQL查询”和“执行全SQL查询”两条命令;一种是对数据库、表和表中数据进行修改,对应“执行SQL语句”和“批量执行SQL语句”两条命令。
“执行单SQL查询”命令,可以执行一条SQL查询语句,并且返回查询到的第一条结果。插入一条“执行单SQL查询”命令,可以看到这条命令有三个属性:“数据库对象”属性,这里填入上文得到的数据库对象objDatabase;“SQL语句”属性,填入将要执行的查询语句,例如:“select * from table1”,意思是查询table1表的所有数据,并返回第一条结果;“输出到”属性,这里填入一个变量iRet,表示SQL语句的执行结果,通过判断iRet的值来判断SQL语句是否成功执行。
执行单SQL查询最后,一定要记得使用“关闭连接”命令,关闭数据库连接。这条命令的唯一属性——“数据库对象”属性,填入数据库对象objDatabase,即可关闭数据库连接。
关闭连接