Неверное имя объекта «ASPState.dbo.ASPStateTempApplications» - исключение после переименования базы данных ASPState - PullRequest
10 голосов
/ 17 июля 2010

Я создал новую базу данных сеансов с помощью команды (aspnet_regsql.exe -S -E -ssadd -sstype p) и создал базу данных с именем ASPState. Затем я переименовал его в нечто вроде E_ASPStateDB. Я настроил правильное имя БД в строке подключения sessionState. Но все равно выдается исключение Неверное имя объекта 'ASPState.dbo.ASPStateTempApplications'

Что мне нужно сделать, чтобы он использовал новое имя базы данных?

Ответы [ 4 ]

12 голосов
/ 02 января 2014

Я запустил это на сервере базы данных, к которому подключался сайт, и он решил это немедленно.

USE [ASPState]
GO

DECLARE @return_value int

EXEC    @return_value = [dbo].[CreateTempTables]

SELECT  'Return Value' = @return_value

GO
3 голосов
/ 23 января 2015

Поскольку вы переименовали БД, вам придется заново создавать таблицы сеансов ASPnet.Ниже решение этой проблемы.

To Remove, use following command: [open visual studion command prompt]

aspnet_regsql -ssremove -S [SERVER] -U [USER] -P [PWD] -d [DATABASE] -sstype c

Then add them again by following command

aspnet_regsql -ssadd -S [SERVER] -U [USER] -P [PWD] -d [DATABASE] -sstype c
0 голосов
/ 16 октября 2018

Вы должны изменить хранимые процедуры, потому что они вызывают таблицы с именем базы данных и схемой следующим образом:

[ASPState] .dbo.ASPStateTempApplications

Вы должны изменить его на

[E_ASPStateDB] .dbo.ASPStateTempApplications

0 голосов
/ 09 июля 2012

после того как вы зарегистрировали имя БД с помощью aspnet_regsql, вы должны будете использовать имя, которое вы зарегистрировали.Нет смысла менять имя потом.Если вы действительно хотите использовать имя типа E_ASPStateDB, почему бы не сначала удалить регистрацию ASPState, а затем заново зарегистрироваться с именем E_ASPStateDB.Это облегчит вашу жизнь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...