Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

[SOLUCIONADO] Verificar existencia de Schema de otra DB

Estas en el tema de Verificar existencia de Schema de otra DB en el foro de Bases de Datos General en Foros del Web. Hola! estoy en un conflicto: Tengo un sp al cual yo le paso una BD y un Esquema y tengo qeu verificar que ambos existan. ...
  #1 (permalink)  
Antiguo 11/07/2017, 10:27
 
Fecha de Ingreso: febrero-2008
Mensajes: 65
Antigüedad: 16 años, 2 meses
Puntos: 0
Verificar existencia de Schema de otra DB

Hola! estoy en un conflicto:

Tengo un sp al cual yo le paso una BD y un Esquema y tengo qeu verificar que ambos existan.

Para verificar que la BD exista utilizo "SELECT * FROM sys.databases WHERE NAME = @DB"

El tema esta con el Schema, por que si utilizo una sentencia similar solo me verifica que el Schema no exista en la BD que estoy usando, pero yo necesito que revise si en la DB que le estoy pasando existe dicho Schema

Uso Sql Server 2012!
  #2 (permalink)  
Antiguo 11/07/2017, 10:59
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: Verificar existencia de Schema de otra DB

Si estan en el mismo servidor puedes usar nombres de 3 partes para saber si el esquema existe en la otra base, si estan en servidores diferentes pues tendrias que usar nombres de 4 partes.

seria algo asi:

Mismo Server

Código SQL:
Ver original
  1. SELECT * FROM database_name.sys.schemas

Otro Servidor
Código SQL:
Ver original
  1. SELECT * FROM server_name.database_name.sys.schemas

Ojo para conectarte al otro servidor deberas de hacer un linked server.
__________________
What does an execution plan say to t-sql query? Go f**k yourself, if you are not happy with me

Etiquetas: existencia, schema, select, verificar
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 09:56.