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)
-   -   Crear tabla paradox en ejecucion (https://www.clubdelphi.com/foros/showthread.php?t=59261)

Kamael 19-08-2008 16:32:37

Crear tabla paradox en ejecucion
 
Quiero crear tablas en ejecucion. El nombre de la tabla lo doy a traves de un campo edit.Lo que quiero hacer es que al introducir un nombre busque si existe y en caso contrario que la cree. Crear la base de datos se hacerlo lo que no se es como comprobar si existe la base.

Más o menos esto es lo que hago. Me falta 'If not Table.Exists...' con el edit1.text.


Código:


with table.Create(nil) do
try
DatabaseName := 'DBDemos' ;
TableName := Edit1.Test ;
TableType := ttParados ;
//
Creo los campos
......
//
CreateTable ;
Finally


eduarcol 19-08-2008 16:39:05

la tabla es un archivo comun y silvestre, podrias buscarlo en el fileexists

Código Delphi [-]
if FileExists(Edit1.Text) then

Caro 19-08-2008 16:52:00

Hola Kamael, para ver si una tabla existe, puedes utilizar el procedimiento GetTableNames de tu componente DataBase, así recuperas todas las tablas que tienes y despues buscas.

Código Delphi [-]
var
 slTablas : TStringList;
begin
 slTablas := TStringList.Create;
 Database1.GetTableNames(slTablas);

 if slTablas.IndexOf(Edit1.Text)<>-1 then
  showmessage('La tabla existe');

Saluditos

roman 19-08-2008 17:09:01

Cita:

Empezado por Kamael (Mensaje 308335)
Me falta 'If not Table.Exists...'

Y, ¿por qué te falta?

Cita:

Empezado por Manual de Delphi

Exists property (TTable)

Description

Read Exists at runtime to determine whether a database table exists. If the table does not exist, create a table from the field definitions and index definitions using the CreateTable method.

This property is read-only.

// Saludos

Kamael 21-08-2008 17:50:44

Gracias por vuestras respuestas. Aún no he podido ponerlo en practica pues estoy un poco fastidiado y a la verdad no tengo ganas de nada. De todas formas cuando me recupere lo pondre en practica.
Un saludo a todos y muchas gracias por contestarme.


La franja horaria es GMT +2. Ahora son las 00:02:33.

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