Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Buscar Temas de Hoy Marcar Foros Como Leídos

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 21-07-2014
grandzon grandzon is offline
Miembro
NULL
 
Registrado: jul 2014
Posts: 14
Poder: 0
grandzon Va por buen camino
Exclamation Ayuda para crear tabla con ado

Hola.

Un saludo a todos, soy nuevo en el foro, inicié con la programación en delphi puesto que pienso que su lenguaje es muy flexible y agiliza mucho el desarrollo de aplicaciones. Mis motivaciones para registrarme en la página es que leí usuarios con algunas dudas en las que puedo ayudar, no soy un experto pero en algunos asuntos básicos de programación puedo ayudar, otra motivación fue ver que hay muchos expertos aquí y tengo un problemilla en el que quizá puedan darme una mano:

estoy usando adocommand para crear una tabla en tiempo de ejecución en access, necesito crear tablas con nombres que no se repitan, como puede haber varias transacciones en un mismo día, pero no de la misma persona, he pensado en crear una tabla con el nombre de la persona y la fecha de la transacción tipo ana_10/10/2014 para lo que uso el siguiente código:

Código Delphi [-]
ADOCOMMAND1.CommandText:='CREATE TABLE '+FORM2.Edit1.Text+'_'+DATETOSTR(DATETIMEPICKER2.DateTime)+' ( '+
      'CODIGO CHAR(10),'+
      'CUOTA_ORDEN CHAR(20),'+
      'CUOTA_MONTO CHAR(20),'+
      'CUOTA_CONDICION CHAR(20),'+
      'PRIMARY KEY (CODIGO)'+
      ');';
ADOCOMMAND1.Execute;

pero al ejecutar la aplicación me salta el error: syntax error in create table statement... sería alguien tan amable de decirme qué estoy haciendo mal y qué hacer para resolverlo, gracias de antemano.
Responder Con Cita
  #2  
Antiguo 21-07-2014
Avatar de olbeup
olbeup olbeup is offline
Miembro
 
Registrado: jul 2005
Ubicación: Santiago de la Ribera (España)
Posts: 685
Poder: 19
olbeup Va camino a la fama
Cita:
Empezado por grandzon Ver Mensaje
Hola.

Un saludo a todos, soy nuevo en el foro, inicié con la programación en delphi puesto que pienso que su lenguaje es muy flexible y agiliza mucho el desarrollo de aplicaciones. Mis motivaciones para registrarme en la página es que leí usuarios con algunas dudas en las que puedo ayudar, no soy un experto pero en algunos asuntos básicos de programación puedo ayudar, otra motivación fue ver que hay muchos expertos aquí y tengo un problemilla en el que quizá puedan darme una mano:

estoy usando adocommand para crear una tabla en tiempo de ejecución en access, necesito crear tablas con nombres que no se repitan, como puede haber varias transacciones en un mismo día, pero no de la misma persona, he pensado en crear una tabla con el nombre de la persona y la fecha de la transacción tipo ana_10/10/2014 para lo que uso el siguiente código:

Código Delphi [-]
ADOCOMMAND1.CommandText:='CREATE TABLE '+FORM2.Edit1.Text+'_'+DATETOSTR(DATETIMEPICKER2.DateTime)+' ( '+
      'CODIGO CHAR(10),'+
      'CUOTA_ORDEN CHAR(20),'+
      'CUOTA_MONTO CHAR(20),'+
      'CUOTA_CONDICION CHAR(20),'+
      'PRIMARY KEY (CODIGO)'+
      ');';
ADOCOMMAND1.Execute;

pero al ejecutar la aplicación me salta el error: syntax error in create table statement... sería alguien tan amable de decirme qué estoy haciendo mal y qué hacer para resolverlo, gracias de antemano.
Hola grandzon,

No puedes usar signos especiales en la creación de una tabla que son /*-+, etc, lo que puedes hacer es en vez de "/" usa "_" que la tabla se quedaría como: ana_10_10_2014

Código Delphi [-]
...
with ADOCommand1 do
begin
  CommandText :=
    'CREATE TABLE ' + Form2.Edit1.Text + FormatDateTime('_dd_mm_yyyy', DateTimePicker2.DateTime) +
      '(' +
        'CODIGO           CHAR(10)' +
        ',CUOTA_ORDEN     CHAR(20)' +
        ',CUOTA_MONTO     CHAR(20)' +
        ',CUOTA_CONDICION CHAR(20)' +
        ',PRIMARY KEY (CODIGO)' +
      ')';

  Execute;
end;
Un saludo.
__________________
Al hacer una consulta SQL, haz que los demás te entiendan y disfruten de ella, será tú reflejo de tú saber.
Responder Con Cita
  #3  
Antiguo 22-07-2014
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.021
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Y si hay otra ana, ¿qué haces?
Piensa bien la estructura de la base de datos, es lo principal, es como los cimientos de un edificio, si no están bien... el edificio terminará por caer.
Responder Con Cita
  #4  
Antiguo 22-07-2014
grandzon grandzon is offline
Miembro
NULL
 
Registrado: jul 2014
Posts: 14
Poder: 0
grandzon Va por buen camino
Gracias por las explicaciones y los consejos chicos, los tomaré muy en cuenta, pues me doy cuenta que aún me quedan cosas por acotar
Responder Con Cita
  #5  
Antiguo 22-07-2014
Avatar de ozsWizzard
ozsWizzard ozsWizzard is offline
Miembro
 
Registrado: may 2004
Ubicación: Murcia
Posts: 190
Poder: 20
ozsWizzard Va por buen camino
Yo, como consejo, te diría que eso de ce crear tablas dinámicamente queda "muy chulo" pero no lo veo práctico, aunque pueda parecerlo.

Considero que es mejor crearse 4 tablas:
  1. Tabla de tipos de tablas
  2. Tabla de campos por tipo de tabla
  3. Tabla de "Tablas"
  4. Tabla de valores de campos

En caso de que los campos siempre sean los mismos, se puede hacer con sólo dos tabas, las dos de abajo y esquematizadas de otra forma.

De todas formas, esto es sólo una forma de verlo.

Un saludo
__________________
La Madurez se llama...
~~~Gaia~~~
Responder Con Cita
Respuesta


Herramientas Buscar en Tema
Buscar en Tema:

Búsqueda Avanzada
Desplegado

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
Ayuda para crear un Complemento para foros IPB irvingl Conexión con bases de datos 2 13-04-2013 19:10:34
Ayuda para elaborar un algoritmo para una tabla de calculo JoAnCa Varios 6 04-04-2011 16:01:05
MS Access: query para crear tabla igual que otra fonx Conexión con bases de datos 2 07-11-2007 12:18:32
Ayuda con el Microsoft Help Workshop para crear las ayudas para aplicaciones en Delph Lester Varios 2 19-06-2003 18:14:16


La franja horaria es GMT +2. Ahora son las 22:19:52.


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