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

conocer tablas sin ingresar al SGBD

Estas en el tema de conocer tablas sin ingresar al SGBD en el foro de SQL Server en Foros del Web. Buenos días Para una migración. Servidor de BD origen: MS Sql Server 2000 bajo SO MS Windows2000 Servidor de BD destino: Postrgesql bajo SO Linux ...
  #1 (permalink)  
Antiguo 08/03/2006, 07:26
 
Fecha de Ingreso: agosto-2005
Ubicación: Mérida, Venezuela
Mensajes: 732
Antigüedad: 19 años, 3 meses
Puntos: 7
conocer tablas sin ingresar al SGBD

Buenos días

Para una migración.
Servidor de BD origen: MS Sql Server 2000 bajo SO MS Windows2000
Servidor de BD destino: Postrgesql bajo SO Linux
Entorno: web con php

Pregunta: ¿existe alguna forma de conocer/preguntar al SGBD Sql Server los nombres de las diferentes tablas existentes en la BD, sin ingresar al SGBD?

si la respuseta se afirmativa, favor orientar.

Gracias de una
__________________
Gracias de todas todas
-----
Linux!
  #2 (permalink)  
Antiguo 08/03/2006, 08:15
Avatar de HenrydeSousa  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 300
Antigüedad: 20 años, 2 meses
Puntos: 2
Hola,
no sé si es exactamente lo que necesitas pero en ms sql server en cada base de datos puedes
encontrar una tabla llamada sysobjects. En ella encuentras un registro por cada objeto que tienes
en tu BD(tabla, stored procedure, etc...).
Con el sieguiente Select puedes obtener información de cuales son las tablas en una determinada BD.

SELECT *
FROM sysobjects
WHERE xtype = 'U'

Espero te sirva.
Saludos...
  #3 (permalink)  
Antiguo 08/03/2006, 12:18
 
Fecha de Ingreso: noviembre-2005
Mensajes: 658
Antigüedad: 19 años
Puntos: 3
Al Sql Server no hay forma de extraer esa informacion si no lo haces autentificado; esto quiere decir que debes de tener por lo menos un usuario-password sqlserver que sea usuario de la base que quieres conocer que tablas tiene.
Una vez obtenido el usuario puedes usar cualquiera de estas herramientas:
osql (por consola MSDOS)
Analizador de consultas
Administrador corporativo
y desde alli hacer el select a la tabla del sistema que te indicaron, o bien, puedes usar el procedimiento almacenado sp_tables, o sp_help....
  #4 (permalink)  
Antiguo 08/03/2006, 17:04
Avatar de Mithrandir
Colaborador
 
Fecha de Ingreso: abril-2003
Mensajes: 12.106
Antigüedad: 21 años, 6 meses
Puntos: 25
Ningún DBMS de dará ni los "buenos dias" si no te has autenticado.

Algunos permiten conexiones anónimas, pero aún así eso es una autenticación.
__________________
"El hombre, en su orgullo, creó a Dios a su imagen y semejanza."
Friedrich Nietzsche
  #5 (permalink)  
Antiguo 09/03/2006, 13:28
 
Fecha de Ingreso: agosto-2005
Ubicación: Mérida, Venezuela
Mensajes: 732
Antigüedad: 19 años, 3 meses
Puntos: 7
Hola HenrydeSousa

Cita:
Iniciado por HenrydeSousa
Hola,
no sé si es exactamente lo que necesitas pero en ms sql server en cada base de datos puedes
encontrar una tabla llamada sysobjects. En ella encuentras un registro por cada objeto que tienes
en tu BD(tabla, stored procedure, etc...).
Con el sieguiente Select puedes obtener información de cuales son las tablas en una determinada BD.

SELECT *
FROM sysobjects
WHERE xtype = 'U'

Espero te sirva.
Saludos...
Justo lo que necesitaba... Gracias!

Aunque, de entrada, sí lo uso así tal cual, y lo meto en un fetch_row, cuando muestro cada índice, me da valores que no logro identificar... más, sin embargo, en la msima docuemtanción, hay un comentario que menciona que agregando un ORDER BY NAME, me da justo lo que buscaba...

Una vez más, gracias!!
__________________
Gracias de todas todas
-----
Linux!
  #6 (permalink)  
Antiguo 10/03/2006, 07:39
Avatar de HenrydeSousa  
Fecha de Ingreso: septiembre-2004
Ubicación: Venezuela
Mensajes: 300
Antigüedad: 20 años, 2 meses
Puntos: 2
Hola, solo para complementar un poco te dejo este enlace a un post en este foro:
http://www.forosdelweb.com/f87/listar-las-bases-datos-sql-server-376984/
Saludos...
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 13:51.