如何以编程方式从oracle窗体连接到数据库
我使用的是oracle forms 6i, 我想使用pl/sql代码以编程方式连接到数据库 我不希望最终用户在表单运行时插入用户名、密码和数据库名称,如下图所示: 我使用的预格式触发器如下所示:如何以编程方式从oracle窗体连接到数据库,oracle,plsql,oracleforms,Oracle,Plsql,Oracleforms,我使用的是oracle forms 6i, 我想使用pl/sql代码以编程方式连接到数据库 我不希望最终用户在表单运行时插入用户名、密码和数据库名称,如下图所示: 我使用的预格式触发器如下所示: begin execute 'connect to hr/hr@yemensoft'; end; 但它返回错误 第2行第10列的错误103遇到符号“连接到hr”/hr@yemensoft“当需要下列选项之一时::=.(@%; 您必须使用登录内置过程: LOGON('hr', 'hr@y
begin
execute 'connect to hr/hr@yemensoft';
end;
但它返回错误
第2行第10列的错误103遇到符号“连接到hr”/hr@yemensoft“当需要下列选项之一时::=.(@%;
您必须使用
登录
内置过程:
LOGON('hr', 'hr@yemensoft');
内置登录
描述:使用指定的用户名和密码执行默认的Oracle Forms登录处理。如果要增强默认登录处理,请从登录时触发器调用此过程。
语法
PROCEDURE LOGON(username VARCHAR2, password VARCHAR2);
PROCEDURE LOGON(username VARCHAR2, password VARCHAR2, logon_screen_on_error BOOLEAN);
方法是在您的
登录时
触发器中:
LOGON('hr', 'hr'||'@'||Get_Application_Property(CONNECT_STRING), false);
确保在表单sweb.cfg
中添加类似的内容:
[your-conf-for-db-yemensoft]
...
...
userid=@yemensoft
返回的错误是..?第2行第10列的错误103遇到符号“连接到hr/hr@yemensoft当需要下列选项之一时::=.(@%;…..说明:
execute
用于运行PL/SQL
connect
是SQL*加语法,而不是PL/SQL。