Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   Problema para borrar una tabla Interbase 2007 (https://www.clubdelphi.com/foros/showthread.php?t=61128)

NPIdea 27-10-2008 08:27:27

Problema para borrar una tabla Interbase 2007
 
Tengo esta tabla y me dice que el indice está en uso y no puedo borrar el indice ni la tabla.

Estaba haciendo pruebas de relaciones con otra tabla y esa si que me ha dejado, pero esta no hay forma.

Código Delphi [-]
/******************************************************************************/
/****               Generated by IBExpert 27/10/2008 9:26:43               ****/
/******************************************************************************/

SET SQL DIALECT 3;

SET NAMES ISO8859_1;



/******************************************************************************/
/****                                Tables                                ****/
/******************************************************************************/



CREATE TABLE TABLA2 (
    ID  INTEGERNULO /* INTEGERNULO = INTEGER */
);




/******************************************************************************/
/****                             Primary Keys                             ****/
/******************************************************************************/

ALTER TABLE TABLA2 ADD CONSTRAINT PK_TABLA2 PRIMARY KEY (ID);


/******************************************************************************/
/****                              Privileges                              ****/
/******************************************************************************/

¿Alguna solución?

duilioisola 27-10-2008 09:11:36

Para borrar o modificar campos de una tabla, debes estar completamente desconectado de la base de datos.

Supongo que tienes algún programa conectado mientras haces el borrado.

Ten en cuenta, que si estás programando en Delphi y tienes el componente de la base de datos con la propiedad Connected=True, eso genera una conexión.

Para ver quien está conectado a la base puedes ver que conexiones hay al puerto 3050 del servidor.
Esto lo puedes hacer con NETSTAT

Código:

C:\Documents and Settings\Usuario>netstat -n

Conexiones activas

  Proto  Dirección local        Dirección remota      Estado
  TCP    127.0.0.1:2935        127.0.0.1:2936        ESTABLISHED
  TCP    127.0.0.1:2936        127.0.0.1:2935        ESTABLISHED
  TCP    127.0.0.1:2937        127.0.0.1:2938        ESTABLISHED
  TCP    127.0.0.1:2938        127.0.0.1:2937        ESTABLISHED
  TCP    127.0.0.1:2939        127.0.0.1:2940        ESTABLISHED
  TCP    127.0.0.1:2940        127.0.0.1:2939        ESTABLISHED
  TCP    127.0.0.1:2941        127.0.0.1:2942        ESTABLISHED
  TCP    127.0.0.1:2942        127.0.0.1:2941        ESTABLISHED
  TCP    192.168.152.200:3050  192.168.152.252:5321  ESTABLISHED
  TCP    192.168.152.200:3863  192.168.152.252:139    ESTABLISHED
  TCP    192.168.152.200:3866  192.168.150.129:3389  ESTABLISHED
  TCP    192.168.152.200:3906  209.85.133.19:80      TIME_WAIT
  TCP    192.168.152.200:3907  209.191.106.109:80    ESTABLISHED
  TCP    192.168.152.200:3919  72.14.247.19:80        ESTABLISHED

Tambien funciona el linux (netstat -a -n)


La franja horaria es GMT +2. Ahora son las 07:18:37.

Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi