Obtener lista de campos llaves...
Hola a todos...
Estoy haciendo una aplicacion que trabaja con bases de datos en access y SQL Server. me hace falta saber cual es la estructura de una tabla en access y en SQL desde mi delphi con el proposito de sabes cuales son los campos llaves de esta tabla... que recalco puede estar en access o SQL Server. estube leyendo en el foro pero no pude sacar nada en claro http://www.clubdelphi.com/foros/showthread.php?t=28183 lo de las tablas de sistema en SQL he podido mirar algo y aunque no he logrado sacar nada por lo menos he encontrado algo... no asi en access porque en ninguna tabla de sistema encuentro las columnas de la Base de Datos como en SQL Server... si existiese algun metodo.. o alguna manera le estare eternamete agradecido.... muchas gracias de antemano... sin mas Mystery |
En SQL Server podrias usar el siguiente Select para obtener los campos
Lo pones en un TQuery (o TADOQuery) y reemplazas Nombre_Tabla por parametros y te devolvera la lista de los campos clave. Lastimosamente no uso Access asi que no puedo ayudarte con eso. Saludos. |
Investiga un poco el diccionario de datos de SQLServer, ahí esta toda la información!... navegando muy poquito encontré esto:
PD: Que raro que me suena "llaves"! Saludos! |
Conectando con ADO puedes llegar a obtener la información de las Tablas de la Base de Datos. A partir de ahí utilizando ADOTable puedes llegar a obtener información de los campos de esa tabla.
Estoy pensando en Access, ya que como han dicho para SQL Server puedes acceder directamente al diccionario. |
Si colocas un ADOTable en un formulario, y haces el Open, puedes programar algo así:
|
gracias...!!!
hola otra vez...
si como dices neftalí ahora el problema esta en access gracias a jcarteagaf y a delphi.com.ar (Federico Firenze).... por sus aportes ademas encontre en la RED este articulo bastante interzante... http://www.sqlmax.com/procnodoc.asp ...he probado el codigo ese que me das esta bastante bueno pero para las claves serian el indexfieldcount y el IndexFields... pero no se si es porque acabo de crearlas me dice que el indexfieldcount=0... y la tabla tiene al menos una llave... entonces ahi es donde esta el lio OK ire por la pista que me diste y despues te cuento... claro que si se les ocurre algo les agradeceria que me lo comenten gracias y chaoooo define llave: http://www.google.com.cu/search?hl=e...G=Buscar&meta= |
Aquí les dejo una función que me resuelve el problema expuesto.....
los parámetros son un puntero a la conexión el nombre de la Tabla de la cual queremos obtener el listado de Claves y esta función nos devuelve una cadena con las llaves de la tabla separadas por ';', lista para usar en un locate jejejejee... algo así... CAD:=key1;key2;etc... bueno muchas gracias por su ayuda. Sin más Mystery |
La franja horaria es GMT +2. Ahora son las 02:12:36. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi