You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PowerBuilder脚本中设置SQL Server的ARITHABORT会话属性

在PowerBuilder脚本中设置SQL Server的ARITHABORT会话属性

要在PowerBuilder应用中配置SQL Server的ARITHABORT会话属性,核心是在数据库连接建立后,通过执行SQL语句设置当前会话的该属性,具体实现方式如下:

方法:连接成功后执行SET语句

ARITHABORT是SQL Server的会话级属性,仅对当前数据库连接生效,因此需要在每次成功建立连接后执行配置语句。

示例代码(应用Open事件)

假设使用PowerBuilder默认事务对象SQLCA,可在应用启动的Open事件中添加以下代码:

// 先完成数据库连接(此处省略连接代码,需确保SQLCA已成功连接)
IF SQLCA.SQLCode = 0 THEN
    // 设置ARITHABORT为ON(如需设置为OFF,替换为'SET ARITHABORT OFF')
    EXECUTE IMMEDIATE 'SET ARITHABORT ON';
    
    // 验证设置是否成功
    IF SQLCA.SQLCode <> 0 THEN
        MessageBox("配置失败", "ARITHABORT设置出错: " + SQLCA.SQLErrText)
    END IF
END IF

其他场景适配

  • 若使用自定义事务对象,只需将代码中的SQLCA替换为你的事务对象名称。
  • 如需为特定数据窗口的会话单独设置,可在数据窗口的RetrieveStart事件中执行相同的EXECUTE IMMEDIATE语句。

注意事项

  • ARITHABORT的设置会影响SQL Server查询行为,例如使用索引视图、计算列索引时,SQL Server要求该属性必须为ON才能正常使用这些对象。
  • 确保应用使用的数据库账号具备执行SET ARITHABORT语句的权限,避免因权限不足导致配置失败。
  • 该设置仅对当前会话有效,若应用重新建立数据库连接,需再次执行配置语句。

内容的提问来源于stack exchange,提问作者keerthana keerthi

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.07 21:15:11