Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > SQL
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
Talking Crear un nuevo campo en una tabla

Saludos a Todos:

Tengo un problema, deseo adherir un nuevo campo a una tabla tipo dbf, he leido que existe esta opción "ALTER TABLE TABLA ADD NOMBRECAMPO TIPODATO()" pero me marca que la variable alter no fue definida, si alguien me pudiera auxiliar se lo agradeceria mucho, ya sea explicando este codigo o con otro....
de antemano muchas gracias

Última edición por torito fecha: 03-06-2003 a las 20:29:58.
Responder Con Cita
  #2  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Hola:

Esta pregunta encajaría mejor en el foro de SQL. ¿Metes el código en un TQuery? ¿le pones esas comillas que aparecen en tu mensaje?

Un saludo
Responder Con Cita
  #3  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
NO, no le pongo esas comillas, y por mas que trato me envia que no encuentra ese archivo, no se si alguien pudiera enviarme un pequeño ejemplo o el codigo correcto y se lo agradecere mucho, por su atención, muchas gracias
Responder Con Cita
  #4  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Hola:

Si el error te indica que no encuentra ese archivo debe ser porque la propiedad DatabaseName de la Query no apunta al lugar indicado. Puedes probar también de indicarle el nombre de la tabla y su ubicación en la sentencia misma:

ALTER TABLE "d:\Datos\Clientes.dbf' ADD NUMCASAS SMALLINT

A ver si así pirula

Un saludo
Responder Con Cita
  #5  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
en si el error dice esto:
name not unique in this context. File or directory does not exist.

y se me hace raro ya que si le doy un select * from tabla si me lo hace correctamente, ¿no será que el query de delphi no soporta este comando??
Responder Con Cita
  #6  
Antiguo 03-06-2003
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Ey torito...

Dinos una cosa, solo por curiosidad...

A donde estas apuntando la propiedad DatabaseName del Tquery?...que tienes alli escrito?

Solo es una corazonada
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #7  
Antiguo 03-06-2003
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
Ahh y se me olvidaba...

Por supuesto que el Tquery de Delphi, si soporta este Comando SQL , yo personalmente lo he usado varias veces
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #8  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
tengo escrito la carpeta donde se encuentra mi tabla
en este caso la carpeta se llama africa y mi tabla se llama africancountries, por lo tanto tengo en mi dataset
c:\africa

Responder Con Cita
  #9  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
Unhappy

perdon el DatabaseName es igual a c:\africa

y lo que pasa es que cuando hago un select * me realiza bien todo pero si cambio a este comando para crear el dato me manda los errores

Responder Con Cita
  #10  
Antiguo 03-06-2003
Avatar de jhonny
jhonny jhonny is offline
Jhonny Suárez
 
Registrado: may 2003
Ubicación: Colombia
Posts: 7.058
Poder: 29
jhonny Va camino a la famajhonny Va camino a la fama
A que bien, Y otra pregunta...

Con que comando estas ejecutando el query?

Con Open?

o con ExecSql?

Si es con Open, trata de hacerlo Con ExecSql y nos cuentas que paso
__________________
Lecciones de mi Madre. Tema: modificación del comportamiento, "Pará de actuar como tu padre!"

http://www.purodelphi.com/
http://www.nosolodelphi.com/
Responder Con Cita
  #11  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
lo hacia con el ExecSql pero ni siquiera me deja activar el query, me manda el error asi que no puedo ejecutarlo
Responder Con Cita
  #12  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Hola:

El error "name not unique in this context" indica que dicho campo ya existe en esa tabla (o un índice con ese mismo nombre).

Un Saludo
Responder Con Cita
  #13  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
no, no tengo ese campo en la tabla y le pongo otros nombres ficiticios que tampoco existen y, no se deja
Responder Con Cita
  #14  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
ahora ya me cambio el error

INVALID FIELD TYPE. FILE OR DIRECTORY DOES NOT EXIST.

y este es mi codigo:

alter table africancountries add limba varchar(10)
Responder Con Cita
  #15  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Pues debe tratarse de un virus, porque va mutando de tipo de error. ; )

La sentencia me parece correcta. Lo siento pero no sé por donde ayudarte.

Un Saludo
Responder Con Cita
  #16  
Antiguo 03-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
oye Andres, ya probe con el drop y si me borra bien el archivo, ya la cheque de virus, ahora si no se que pueda ser
Responder Con Cita
  #17  
Antiguo 03-06-2003
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
Cita:
Posteado originalmente por torito
INVALID FIELD TYPE
No creo que en DBase exista el tipo VarChar, ¿porqué no pruebas con Char?
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #18  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Hola de nuevo:

Torito, sí tenías bastante razón en que da unos problemas muy extraños. Acabo de hacer pruebas con una tabla dBase desde el Database Desktop y me saltan esos errores INVALID FIELD TYPE aunque el tipo sea válido (SMALLINT, CHAR, VARCHAR ... los he probado todos).

Lo CURIOSO es que me ha funcionado cuando he escrito el nombre de la tabla entre comillas (quizás el intérprete de SQL local necesite saber el tipo de tabla para modificarla). Prueba esto:

alter table "africancountries.dbf" add limba varchar(10)

Saludos
Responder Con Cita
  #19  
Antiguo 03-06-2003
andres1569 andres1569 is offline
Miembro
 
Registrado: may 2003
Posts: 908
Poder: 21
andres1569 Va por buen camino
Hola de nuevo:

El truco está en que al ponerlo entre comillas le indiques la extensión .dbf, de esa forma sí se aclara. Si realizas la operación 2 veces , a la segunda te saltará el error: NAME NOT UNIQUE IN THIS CONTEXT, porque la primera se realizó con éxito.

Saludos
Responder Con Cita
  #20  
Antiguo 04-06-2003
Avatar de torito
torito torito is offline
Miembro
 
Registrado: jun 2003
Ubicación: Querétaro, Mex.
Posts: 349
Poder: 21
torito Va por buen camino
Talking

SI!!!, esa era la razón, muchas gracias a todos, ya la tengo trabajando
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


La franja horaria es GMT +2. Ahora son las 22:03:35.


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