sql-server - 如何为不同的数据库分隔用户定义的消息

标签 sql-server error-handling

我有2个数据库,每个数据库都有自己的用户定义消息。问题在于它们存储在sys.messages中的message_id相交,因此,如果不更改一个数据库中的所有消息,则无法将这些DB部署在同一SQL Server实例上(但这太昂贵了-我必须更改所有存储过程)。

有什么方法可以使错误消息特定于数据库?

最佳答案

sys.message表是数据库范围的,因此您根本无法轻松地做到这一点。该表实际上仅应用于数据库范围内的事物(如扩展存储过程和其他服务器扩展),而不应用于存储过程。但是我想改变这一点已经为时已晚。

我只看到两种解决方法:

  • 在添加消息时使用“语言”字段来标识消息而不是应用程序。当然,这将引起其他问题,因为您需要让每个应用程序使用其自己的“语言”。
  • 使用两个不同的SQL Server实例,每个应用程序一个。
  • 关于sql-server - 如何为不同的数据库分隔用户定义的消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5115103/

    相关文章:

    c# - 如何在 FluentMigrator 的迁移中检索插入的标识

    excel - 使用On Error Goto尝试查找为什么我遇到错误

    python - python捕获 “all other error”类型示例案例

    validation - 一种基于Result <_,E1>和Result <T,E2>来获取Result <T,E>的好方法吗?

    node.js - Node JS。我可以在一个地方处理错误吗?没有 try and catch block

    mysql - 时间戳意味着什么?

    sql - 获取与条件连接上所有相应记录匹配的记录

    android - AdMob 错误 "you must have adactivity declared in androidmanifest.xml with configchanges"

    sql-server - 从 Azure 获取备份的正确方法是什么?

    sql-server - SQL Server网络接口(interface): Connection string is not valid [87]