无效的对象名称'ASPState.dbo.ASPStateTempApplications' - 重命名ASPState数据库后的异常

Rav*_*avi 10 asp.net session-state sql-session-state

我使用命令(aspnet_regsql.exe -S -E -ssadd -sstype p)创建了新的会话数据库,并创建了名为ASPState的DB.然后我将其重命名为E_ASPStateDB.我在sessionState连接字符串中配置了正确的DB名称.但仍然会抛出异常无效的对象名称'ASPState.dbo.ASPStateTempApplications'

我需要做什么,以便它将使用新的数据库名称?

小智 13

我在网站连接的数据库服务器上运行它,它立即解决了.

USE [ASPState]
GO

DECLARE @return_value int

EXEC    @return_value = [dbo].[CreateTempTables]

SELECT  'Return Value' = @return_value

GO
Run Code Online (Sandbox Code Playgroud)

  • 这立即解决了我的问题,但每次重新启动服务器时,我都必须运行它.是否有更好的方法在服务器上进行此更改永久性? (2认同)

She*_*ezi 0

一旦您使用 aspnet_regsql 注册了数据库名称,您就必须使用您注册时使用的名称。事后更改名称确实没有意义。如果你确实想使用E_ASPStateDB这样的名称,为什么不先删除ASPState的注册,然后用E_ASPStateDB这个名称重新注册呢?它将使您的生活更轻松