Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Obtener campos PK tabla (https://www.clubdelphi.com/foros/showthread.php?t=54942)

Xavierator 03-04-2008 16:25:24

Obtener campos PK tabla
 
Hola, ¿ para una BBDD SQL Server u Oracle y una tabla cualquiera indicada, como puedo obtener automaticamente los campos que forman parte de la clave primaria (PK) ?

Gracias, Xavierator.

ContraVeneno 03-04-2008 17:39:02

En SQL Server tendrías que combinar las tablas SysObjects, SysIndexes, SysIndexKeys y SysColumns para obtener la información que quieres.

Xavierator 04-04-2008 16:31:52

Hola, tengo una query para obtener las PK's, pero funciona desde SQL Server y no desde DBExpress, esta por ejemplo obtiene la lista de campos de la tabla indicada:

SELECT
clmns.name AS [Name],
usrt.name AS [DataType]
FROM
sys.tables AS tbl
INNER JOIN sys.all_columns AS clmns ON clmns.object_id=tbl.object_id
LEFT OUTER JOIN sys.types AS usrt ON usrt.user_type_id = clmns.user_type_id
WHERE
(tbl.name='nombre table')

desde DBExpress, da error "DBX Error: operation not supported", alguna idea ?

Gracias, Xavierator.


La franja horaria es GMT +2. Ahora son las 18:07: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