[]
介绍如何连接到Oracle数据库。
连接Oracle数据库前,需要用户先配置Oracle,配置完成才能连接Oracle。具体步骤见下面的“配置Oracle”。
为了活字格连接外连数据库后能正确地工作,您需要给目标数据表中设置唯一、不为空的主键(至少一个)。在选择主键时,请不要选择以下数据类型的字段:text、ntext、Binary、Varbinary、image、hierarchyid、xml、sql_variant、geometry、geography。
当您创建了一个外连数据表,活字格将会尝试获取该表的主键,如果这个主键不存在,活字格将会去寻找唯一且不为空的一列作为主键。
连接Oracle数据库前,需要用户先配置Oracle,配置完成才能连接Oracle。
操作步骤
1. 下载OracleInstantClient文件压缩包至本地,解压后保存至C盘或其他固定路径下。下载链接:https://cdn.grapecity.com.cn/huozige/tools/OracleInstantClient.zip。
type=note
说明:
如果您的活字格为V4版本,下载V4版本对应的OracleInstantClient文件压缩包至本地,解压后保存至C盘或其他固定路径下。下载链接:http://downloads.gcpowertools.com.cn/HuoZiGe/OracleInstantClient.zip。
2. 配置系统环境变量。
在“此电脑”上右击,选择“属性-高级系统设置”,在系统属性对话框的“高级”页签中,单击右下角的“环境变量”。Windows10系统可直接单击系统左下角的开始菜单,输入“环境”直接搜索出“编辑系统环境变量”,单击即可弹出系统设置对话框。以下以Windows10系统为例,其他系统以实际为准。
单击“环境变量”进入环境变量的编辑窗口,在“系统变量”下方,单击“新建”,添加两个系统变量。①变量名:ORACLE_NAME;变量值:单击“浏览目录”,选择步骤中文件的保存路径,选到此文件的第二级目录“instantclient_18_3”,单击“确定”。如文件保存在C盘根目录下,则变量值为C:\OracleInstantClient\instantclient_18_3。②变量名:TNS_ADMIN;变量值:同上。
选中变量“Path”,单击“编辑”,进入编辑界面。单击右侧的“新建”,添加一个新的环境变量,变量值与上一步中的变量值相同。
添加、编辑完环境变量后,单击“确定”,关闭对话框。
3. 使用记事本或其他文本编辑器打开“OracleInstantClient\instantclient_18_3”目录下的“tnsnames.ora”文件,进行编辑。请注意空格及括号匹配。
name =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = oraclehostname)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = orcl)
)
)
其中,name可以自定义其名称;oraclehostname为Oracle服务器的主机名称;orcl为服务名称。
编辑完成后将其保存关闭。
type=note
说明:
您也可以不配置此文件。不配置此文件时,在下面的“连接到Oracle”中的步骤3中,登录到服务器时,服务器名需要输入“oraclehostname:1521/orcl”。
4. 重启电脑。
在活字格中连接到 Oracle 数据库的具体操作如下:
操作步骤
1. 在功能区菜单栏中选择“数据->连接数据库”。
或在表的标签栏上右击,选择“连接到外联表”。
2. 选择数据源为“Oracle数据库”。
type=note
说明:
首次选择“连接到数据库”将打开“选择数据源”对话框。如果您之前已经选择了一种数据源进行连接,则将打开上一次连接的数据源的“连接属性”对话框。您可以在“连接属性”对话框中,单击“数据源”右边的“更改”,进入“选择数据源”对话框,重新选择数据源。
3. 输入服务器名、用户名和密码。
如果配置了“tnsnames.ora”文件,登录服务器时,服务器名为配置文件中自定义的名称*“name”*;
如果没有配置“tnsnames.ora”文件,登录服务器时,服务器名为*“oraclehostname:1521/orcl”*;
4. 设置完成后,您可以单击“测试连接”测试和设定的服务器的连接情况。
单击“确定”。
5. 单击“确定”后,弹出“导入表”对话框,在数据源的表列表中选中要导入的表,单击“>”将选中的表移到选择的表列表,或单击“>>”将数据源的表全部移到选择的表列表中。
type=note
说明:
如果目标源为视图,则会加上“(视图)”的后缀。
视图支持设置数据权限。
如果您选择了视图,在单击“确定”后需选择视图的主键。
6. 单击“确定”,即可将表导入。打开该表,在表设置中可看到其类型为“外联表”。
连接到Oracle后,再单击“连接到数据库”下的下拉按钮,会列出已连接的数据库。如下图中的Oracle,单击即可直接打开导入表的对话框。
type=note
说明:
勾选“允许活字格修改数据库或表结构”后,您就可以直接在活字格中修改外联数据表,如添加新的字段、删除字段、修改字段名称、设置字段的缺省值/必须/唯一等。
如果您需要在外联表中设置工作流或是设置数据权限,包括创建记录权限、行权限和字段权限,您都需要勾选此项。
勾选“允许活字格修改数据库或表结构”后,您还可以设置数据类型为文本、用户、图片和附件的字段长度。
在活字格中删除外联表不会删除外联数据库中的数据表。
在活字格中创建字段对应在Oracle数据库中的字段类型如下表所示。
活字格字段类型 | Oracl字段类型 |
---|---|
用户 | NVARCHAR2(500) |
时间 | INTERVAL DAY TO SECOND |
文本 | NVARCHAR2(500) |
图片 | NVARCHAR2(500) |
整数 | NUMBER |
小数 | NUMBER |
日期 | DATE |
是/否 | NUMBER(1) |
附件 | NVARCHAR2(500) |
活字格支持一部分的Oracle字段类型,不支持的字段类型会全部转换为文本类型。
Oracle中的字段类型对应在活字格中的字段类型如下表所示。
Oracle字段类型 | 活字格字段类型 |
---|---|
CHAR | 文本 |
CLOB | 文本(Oracle版本大于19.13) |
DATE | 日期 |
INTERVAL DAY TO SECOND | 时间 |
NCHAR | 文本 |
NVARCHAR2 | 文本 |
NCLOB | 文本(Oracle版本大于19.13) |
NUMBER(x, 0) | 整数 |
NUMBER(x,y) y is larger than 0. | 小数 |
NVARCHAR2 | 文本 |
RAW | 文本 |
TIMESTAMP | 日期 |
TIMESTAMP WITH LOCAL TIME ZONE | 日期 |
TIMESTAMP WITH TIME ZONE | 日期 |
VARCHAR | 文本 |
VARCHAR2 | 文本 |