问题标签 [ora-28002]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 宽限期内的 OCILogon - ORA-28002
当我使用 SQL*Plus 连接到密码进入宽限期的用户(Oracle 11g、Oracle 8i)时,我收到一条错误消息,但连接仍然成功:
另一方面,在我的 C++ OCI 代码中OCILogon2
,如果我尝试连接同一个用户,我会得到一个OCI_ SUCCESS_ WITH_ INFO
相同的“错误”,但如果我继续,OCISvcCtx*
我得到的似乎是无效的(即使它不是 null ),因为尝试执行OCIAttrGet
orOCIStmtExecute
会给我一个OCI_INVALID_HANDLE
错误。
用户应该在他的所有宽限期内成功连接到数据库,直到他的密码完全过期。那么,当我的句柄不好时,SQL*Plus 怎么能正常连接呢?我应该尝试以不同的方式连接吗?
非常感谢。
php - 如何在 PHP oracle 宽限期消息中捕获?
我在 PHP 应用程序中使用 Oracle 数据库。
用户尝试连接到 PHP 应用程序。他的密码已过期,但他的用户配置文件的宽限期不为空,因此他仍然可以连接到应用程序。
我想做的是认识到这个用户应该更改他的密码并向他显示一条消息。
我已经尝试过oci_error()
,但它没有返回任何内容,因为与该用户连接到数据库没有失败。
我想抓住 ORA-28001(和 ORA-28002)
不幸的是,我无法对数据库本身的结构进行任何更改(添加额外的表或额外的字段)。
c# - Oracle password expiry and grace period handling using C# client
I have a c# client and I am using oracle 10g database.
My query is:
- Is the expiry grace period over and above exiry date?
- When the user is in grace period can the user change his/her password using query
ALTER USER XYZ IDENTIFIED BY SOMEPWD
or he still need to contact DBA. - How can I handle oracle warning ORA-28002(when the user is in grace period) in c# client. does it at all gets transmitted to c# client. Would it still be handled as exception (try-catch).
- When the password has already expired, is it that only DBA can change your password.
- does the account gets locked also when expiry date has exceeded beyond grace period.
Please note I am not sys dba so I cannot access dba_users or dba_profiles.
Thanks in advance.
perl - 在 solaris shell 脚本/perl 程序中连接到 Oracle/DB2 数据库时如何摆脱密码过期错误消息?
我正在通过shell 脚本/Perl 程序连接到Oracle/DB2数据库。我连接的数据库需要每 60 天更改一次密码。这是根据我们的安全政策,不能更改。但这在通过 shell 脚本或 perl 程序连接到数据库时会产生问题。要连接到 oracle DB,我们使用下面的 shell 脚本:
但是包含数据库连接部分日志的 SITE_SQL.log 在其中出现错误消息。
这使脚本失败。但是连接发生在数据库上,我们在假脱机文件中获得了所需的数据。当脚本检查日志文件 SITE_SQL.log 中的错误时,它会失败。我不想更改错误处理部分,但要禁止将此消息显示/登录到日志文件中,以便脚本不会在日志文件中看到此错误消息。
我们也有一个面临同样问题的 perl 脚本。下面是使用的代码。
在这里,由于我们收到密码到期警报错误消息,SubExecuteSQL 函数返回“ERROR”作为返回值,这导致 perl 脚本失败。
DBA 不同意将密码设置为不过期选项,因为它违反了安全策略。密码设置为每 60 天更改一次。因此此错误消息将开始弹出并导致失败。
请让我知道如何从获取/登录到日志文件中抑制此错误消息。
提前致谢
c++ - 使用 OCI_SUCCESS_WITH_INFO 在 OCILogon 后获取 OCI_INVALID_HANDLE
我创建了以下个人资料。
当我尝试从命令提示符登录时,它成功登录并显示以下错误消息。
直到我没事为止。
但是我为 OCI 登录和一些操作编写了一个小程序。
当我使用上述用户调用 OCILogon 时,它返回 1 的地址OCI_SUCCESS_WITH_INFO
。
之后,我尝试OCI_HTYPE_SVCCTX
使用OCIAttrGet
它来获取返回-2
的地址OCI_INVALID_HANDLE
。
为什么句柄会损坏?有什么办法可以克服这个问题并一直工作到宽限期结束?
请在下面找到示例 OCI 客户端。