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)
-   -   Column unknown (https://www.clubdelphi.com/foros/showthread.php?t=54987)

elcolo83 04-04-2008 18:04:04

Column unknown
 
Hola, estoy haciendo una aplicacion en delphi en la cual utiliza firebird y utilizo los componentes de interbase... El problema que tengo es que es al hacer un Select Valor1 from Tabla1 me pone SQL error code = -206 column unknown Valor1, sin embarlo el si esta definido en la tabla ya que si pongo Select * from Tabla1 lo veo en un DBGrid... como lo soluciono???

elcolo83 04-04-2008 18:15:59

Agotando las opciones y probando de todo me di cuenta que si al campo le pongo las comillas asi:
Select "Valor1" from Tabla1
Queda andando... o sea que esta ria solucionado (o no quien sabe) sinceramente no se porque hay que ponerle comillas al campo para que lo tome... alguien sabe algo??? porque en los otros SQL de los dataset que tengo no los tengo puesto con comillas a los campos...

elcolo83 04-04-2008 18:50:56

Sigue Andando Mal.... Ni Si Quiera Las Comillas Salvan El Error Ahora... Que Pasa??

BlueSteel 04-04-2008 19:35:28

Hola

bueno, eso de las comillas tambien me paso.. cuando usabe Interbase 6.... eso es producto del Dialecto que utilizas.. (según lo que me explicaron en algun post...)...

Mira.. aquí tengo algunos ejemplos.. de uso de Sentencias SQL.. (todos conectados a IBQuerys que estan en un DataModule llamado Datos)

Para Seleccionar
Código Delphi [-]
Datos.IBQ_Select.Close;
Datos.IBQ_Select.SQL.Clear;
Datos.IBQ_Select.SQL.Add('Select * From "Cliente" Order By "Cli_Rut"');
Datos.IBQ_Select.Open;

Para Eliminar
Código Delphi [-]
 
Datos.IBQ_Edit.SQL.Clear;
Datos.IBQ_Edit.SQL.Add('Delete From "Cliente" Where "Cli_Rut"=:Var1');
Datos.IBQ_Edit.Params[0].AsString := Datos.IBQ_Select['Cli_Rut'];
Datos.IBQ_Edit.ExecSQL;
Datos.IBT_Edit.Commit;
Datos.IBT_Select.Commit;

Para Insertar
Código Delphi [-]
Datos.IBQ_Edit.SQL.Clear;
Datos.IBQ_Edit.SQL.Add('Insert Into "Cliente" ("Cli_Rut","Cli_Razon","Cli_Giro","Cli_Email","Cli_Direccion","Cli_Poblacion","Cli_Comuna","Cli_Fono  ","Cli_Fax")');
Datos.IBQ_Edit.SQL.Add('Values (:P1, :P2, :P3, :P4, :P5, :P6, :P7, :P8, :P9)');
Datos.IBQ_Edit.Params[0].AsString := vRut.Text;
Datos.IBQ_Edit.Params[1].AsString := vRaz.Text;
Datos.IBQ_Edit.Params[2].AsString := vGir.Text;
Datos.IBQ_Edit.Params[3].AsString := vMai.Text;
Datos.IBQ_Edit.Params[4].AsString := vDir.Text;
Datos.IBQ_Edit.Params[5].AsString := vPob.Text;
Datos.IBQ_Edit.Params[6].AsString := vCom.Text;
Datos.IBQ_Edit.Params[7].AsString := vTel.Text;
Datos.IBQ_Edit.Params[8].AsString := vFax.Text;
Datos.IBQ_Edit.ExecSQL;
Datos.IBT_Edit.Commit;
Datos.IBT_Select.Commit;

Bueno.. estos son solo algunos ejemplos de como realizaba yo el proceso para Interbase 6.. puede que con el Firebird sea lo mismo...

Salu2:p:D

elcolo83 04-04-2008 21:13:40

Si esta bien, asi es como lo tengo, primero pense que era el codigo SQL que ponia pero ya es algo que descarto.... Estoy suponiendo que debe ser el servidor de firebird.... voy a intentar reinstalandolo a ver que suerte tengo, muchas gracias!!!!

Lepe 04-04-2008 23:16:48

Deja el Servidor tranquilo, él no tiene la culpa de nada.

BlueSteel te ha dicho que es el dialecto usado en tu base de datos, investiga por ahí, mira el dialecto que tienes, si acaso pasa tu BBDD a Dialecto 3, pero ¿de qué sirve reinstalar el servidor Firebird? ¿le vas a cambiar alguna opción de instalación?.... si no tiene opciones que cambiar !!!

Yo uso los componentes MDO y la verdad, tienen un checkbox para automáticamente entrecomillar los campos... nunca lo he usado.

Otra cosa, quizás la primera que debes mirar, son los componentes IB, sobre todo el IbDatabase o los ibquerys por si tienen una propiedad que haga obligatorio entrecomillar los campos.

Saludos


La franja horaria es GMT +2. Ahora son las 15:39:25.

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