FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Buscar | Temas de Hoy | Marcar Foros Como Leídos |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Componentes ADO y propiedades generales de Base de datos
Buenas,
Me encuentro realizando un programa, a nivel personal, que me permita poder trabajar con varios gestores de bases de datos. Este programa, por una parte consiste en permitir realizar selects, updates, inserts sobre tablas de una base de datos sobre la que previamente conectamos. Por otra parte, muestra la estructura de la base de datos, mostrando tablas, vistas, stored procedures, usuarios propietarios de las tablas, campos clave de una tabla, etc.. Es en esta última donde me encuentro algo mas perdido. Hasta el momento estoy usando:
Para obtener las tablas y vistas de la base de datos sobre la que estoy conectado.
Para obtener los stored procedure. Luego uso una función que recorre la tabla que tenga en un TAdoTable y me muestra el tipo de cada campo y su longitud. Me gustaria mejorar todo esto un poco y poder obtener el propietario de cada tabla que me devuelve ese GetTableNames y poder distinguir entre vistas y tablas, etc. Posiblemente me equivoque y tal vez esté buscando una forma de obtener las "propiedades generales" de la base de datos de forma incorrecta, pero no conozco mas que esta forma o bien mediante consultas como:
Que en este caso solo serviria para SQL Server y pretendo que la aplicación pueda trabajar con varios como Intersystems Caché, SQL Server. En definitiva, creo que no estoy buscando un trozo de código que haga algo en concreto, sino ideas, indicaciones, consejos, pasos a seguir para explotar un poco mejor esa información que creo que se puede obtener toda desde los componentes TAdoConnection y TAdoTable o TAdoQuery. Gracias de antemano, Un saludo! |
#2
|
||||
|
||||
Normalmente la mayoría de sistemas, poseen un diccionario, aunque el acceso será distinto para los diferentes sistemas.
Tal vez deberías almacenar esas diferencias, para poder acceder de forma diferente a cada uno de ellos.
__________________
Germán Estévez => Web/Blog Guía de estilo, Guía alternativa Utiliza TAG's en tus mensajes. Contactar con el Clubdelphi P.D: Más tiempo dedicado a la pregunta=Mejores respuestas. |
#3
|
|||
|
|||
Hola,
Retomando un poco este tema y con algo mas de avances, os cuento. Actualmente cargo un esquema en un DataSet, según el equema que cargo, puedo consultar unas cosas u otras (bases de datos, tablas, etc..).
Cambiando el primer parámetro, en esete caso siCatalogs, por el esquema que quiera cargar. Permitiendome obtener usuario propietario de tablas, campos clave, etc. etc. Esto funciona correctamente en SQL Server pero no en todas las bases de datos, no he tenido opción de probar más que en Intersystem Caché y no todos los esquemas me devuelven información. Realmente no se si es que no utilizo bien los componentes o es que los componentes ADO no funcionan en este aspecto para todas las bases de datos que permiten conectar por ODBC. El objetivo es intentar minimizar el número de sentencias contra cada diccionario según el motor de base de datos, ya que supongo que esta información se puede obtener de una forma mas o menos "automática", sin tantisima mecanización, o tal vez esté equivocado. ¿Se os ocurre algo? Gracias. |
Herramientas | Buscar en Tema |
Desplegado | |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Obtener Datos generales de la bd utilizada | Lizette | Varios | 2 | 08-03-2009 06:41:11 |
No tengo los componentes de Base de Datos | JuanchoRM | Conexión con bases de datos | 3 | 09-02-2009 10:55:10 |
Informacion sobre componentes de base de datos | ErenioDhG | Conexión con bases de datos | 0 | 31-03-2008 20:57:18 |
Componentes para base de datos | Kristian Patiño | Varios | 5 | 05-03-2008 16:33:49 |
Extraer datos generales de un archivo | Albano | Varios | 1 | 13-06-2007 10:58:38 |
|