2010-07-17 26 views
7

He creado una nueva base de datos de sesión usando el comando (aspnet_regsql.exe -S -E -ssadd -sstype p) y creo una base de datos llamada ASPState. Luego lo renombré a algo como E_ASPStateDB. He configurado el nombre correcto de la base de datos en la cadena de conexión sessionState. Pero aún así produce la excepción no válida nombre de objeto 'ASPState.dbo.ASPStateTempApplications'Nombre de objeto inválido 'ASPState.dbo.ASPStateTempApplications' - Excepción después de cambiar el nombre de la base de datos ASPState

lo que tengo que hacer, por lo que utilizará el nuevo nombre de la base de datos?

+0

No estoy seguro pero supongo que el nombre de la base de datos está codificado por MS, una sugerencia sería ejecutar el generador de perfiles y ver la consulta que se envía. –

Respuesta

0

una vez que haya registrado un nombre de base de datos usando aspnet_regsql, deberá usar el nombre con el que se registró. No tiene sentido cambiar el nombre después. Si realmente desea utilizar un nombre como E_ASPStateDB, ¿por qué no eliminar primero el registro de ASPState y luego volver a registrarse con el nombre E_ASPStateDB? Hará su vida más fácil

+0

Sí, tenemos que eliminar el registro anterior para usar el nuevo nombre de db, ya que solo tenemos una relación uno a uno. –

8

Ejecuté esto en el servidor de db al que se estaba conectando el sitio y lo resolvió inmediatamente.

USE [ASPState] 
GO 

DECLARE @return_value int 

EXEC @return_value = [dbo].[CreateTempTables] 

SELECT 'Return Value' = @return_value 

GO 
+1

Esto resolvió mi problema de inmediato, pero cada vez que reinicio mi servidor, tengo que ejecutar esto. ¿Hay una mejor manera de hacer que este cambio sea permanente en el servidor? – Diablo

0

Como ha cambiado el nombre del DB, tendrá que volver a generar las tablas de sesión de ASPnet. A continuación está la solución para ello.

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 
Cuestiones relacionadas