Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 02-12-2015
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Encontrar definición de clave primaria

Estoy trabajando con FB 2.5. Tengo una tabla con esat definición:
Código:
CREATE TABLE CTAEMI (
  EMISOR INTEGER NOT NULL,
  CUENTA VARCHAR(20) NOT NULL,
  SUFIJO VARCHAR(20) NOT NULL,
  ADD PRIMARY KEY (EMISOR,CUENTA,SUFIJO)
y tengo que modificar la estructura de la tabla cambiando la definicion del campo CUENTA para que pase a tener 34 posiciones. Dado que dicho campo está dentro de la definición de la clave primaria, antes de hacer el ALTER TABLE:
Código:
ALTER TABLE CTAEMI
ALTER COLUMN CUENTA
TYPE VARCHAR(34)
tengo que eliminar la clave primaria.

Dado que al crear la tabla la primera vez no se me ocurrió "bautizar" dicha clave, he estado buceando por las tablas RDB$ del sistema, pero al mirar la estructura de dicha tabla con EMS SQL Manager me encuentro que el nombre (Name) asignado de forma automática por el sistema ha sido INTEG_20 y el índice (Index name) lo ha llamado RDB$PRIMARY5. He podido localizar este último valor pero al tratar de hacer un DROP del índice tendría que ser así:
Código:
ALTER TABLE CTAEMI DROP CONSTRAINT INTEG_20
Ese valor RDB$PRIMARY5 si lo he localizado en RDB$INDICES, pero INTEG_20 no he sido capaz de encontrarlo. ¿Dónde se guardan los nombres de los índices?
Responder Con Cita
  #2  
Antiguo 02-12-2015
lbuelvas lbuelvas is offline
Miembro
 
Registrado: may 2003
Ubicación: Colombia
Posts: 377
Poder: 22
lbuelvas Va por buen camino
Este enlace es antiguo pero te puede ser útil.

http://www.alberton.info/firebird_sql_meta_info.html
__________________
Luis Fernando Buelvas T.
Responder Con Cita
  #3  
Antiguo 03-12-2015
Avatar de Neftali [Germán.Estévez]
Neftali [Germán.Estévez] Neftali [Germán.Estévez] is offline
[becario]
 
Registrado: jul 2004
Ubicación: Barcelona - España
Posts: 18.293
Poder: 10
Neftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en brutoNeftali [Germán.Estévez] Es un diamante en bruto
Prueba con esta:

Código SQL [-]
SELECT * FROM RDB$RELATION_CONSTRAINTS RCX,RDB$INDEX_SEGMENTS ISX
WHERE RCX.RDB$RELATION_NAME='NOMBRE_MI_TABLA'
AND RCX.RDB$CONSTRAINT_TYPE='PRIMARY KEY' AND RCX.RDB$INDEX_NAME=ISX.RDB$INDEX_NAME

Donde "NOMBRE_MI_TABLA" es el nopmbre de la tabla sobre la que estás buscando la clave primaria.
__________________
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.
Responder Con Cita
  #4  
Antiguo 03-12-2015
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Cita:
Empezado por Neftali Ver Mensaje
Prueba con esta:
Perfecto Neftalí; es exactamente lo que necesito. Muchas gracias.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
DataField clave primaria doble franfl C++ Builder 4 24-07-2008 07:48:36
Ayuda Con Clave Primaria pablo2244 MySQL 4 30-05-2005 21:49:01
cambiar la clave primaria con SQL User_Baja_2 SQL 8 18-06-2004 08:41:31
Cambiar clave primaria pinoxito Firebird e Interbase 7 13-01-2004 21:51:26
cambiar una clave primaria User_Baja_2 SQL 3 06-10-2003 18:03:38


La franja horaria es GMT +2. Ahora son las 04:59:17.


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
Copyright 1996-2007 Club Delphi