Importé un montón de tablas de SQL Server 2000 a mi base de datos de 2008. Todas las tablas importadas tienen el prefijo mi nombre de usuario, por ejemplo: erpadmin.tablename
.
En las propiedades de la tabla, enumera 'erpadmin' como el esquema db. Cuando escribo una consulta ahora tengo que incluir 'erpadmin'. delante de todos los nombres de tabla que es confuso.
Resultado actual:
select *
from erpadmin.tablename
Resultado deseado:
select *
from tablename
fuente
select ... from table5 ;
) y obtienen resultados diferentes. Esto es malo para el almacenamiento en caché del plan y también para la solución de problemas (persona de soporte de referencia, "esa consulta funciona bien aquí"). Además, el enlace de esquema, que se requiere para indexar funciones y vistas, requiere dos nombres de parte. TLDR: deja de ser perezoso: usa nombres de dos partes.Como complemento de la respuesta @AdamWenger. Para crear scripts para transferir a otro esquema, puede usar el siguiente script
fuente
Su problema probablemente se deba a cómo se realizó la migración. Las cosas no deben adjuntarse a su usuario, a menos que se lo considere el propietario.
Los esquemas están ahí para ayudarlo a separar las tablas de cualquier forma que tenga sentido. Supongamos que tiene una tabla de recursos para el departamento de recursos humanos y desea una tabla separada para el departamento de producción, manteniendo ambas en la misma base de datos. En ese caso, puede tener dos tablas denominadas recursos, una en el esquema de producción y otra en el esquema de recursos humanos. Es por eso que se deben especificar shcemas, a menos que traigas cosas al esquema predeterminado.
Si no está rehaciendo la migración por alguna otra razón, la transferencia de Adam Wenger debería ser una buena opción.
fuente
Inicie su comando con
USE [tablename]
Su consulta no tiene una base de datos asociada a la que hacer referencia y la base de datos que está viendo no es la predeterminada para el usuario conectado En la parte superior de la ventana de consulta, probablemente dice "maestro"fuente
[database_name]
verdad?