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)
-   -   problema con un insert (https://www.clubdelphi.com/foros/showthread.php?t=38155)

darkclow_juliga 05-12-2006 11:30:56

problema con un insert
 
buenas, necesito que alguien me ayude mi problema es le siguiente:
tengo una base de datos en sql server y al querer insertar nuevos datos desde delphi con el siguiente comando

AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQl.Text := 'INSERT into Articulos( Nombre, precio, descripcion) Values('+edit1.text+','+edit2.text+','+edit3.text+')';
adoquery1.ExecSQL


si escribo numeros en los edit me los ingesa sin ningun problema pero cuando escribo caracteres lo que sea es cuando me da error, alguien sabe en que estoy mal??

Bicho 05-12-2006 11:40:33

Hola, porque no pruebas a pasar los valores por parámetros?? De esta manera:

Código Delphi [-]
AdoQuery1.Close;
AdoQuery1.SQL.Clear;
AdoQuery1.SQl.Text := 'INSERT into Articulos( Nombre, precio, descripcion) Values(:vnom, :vpre:, :vdesc)';
AdoQuery1.ParamByName('vnom').asString := edit1.text;
AdoQuery1.ParamByName('vpre').asString  := edit2.text;
AdoQuery1.ParamByName('vdesc').asString := edit3.text;
adoquery1.ExecSQL

De ésta forma los parámetros ya se los pasas a la sentencia SQL, con los valores formateados en string, por eso hemos puesto el asString, si quisieras pasarlos a enteros deberias primero, hacer un casta al text del edit (StrToInt(edit1.text)) y en lugar de poner asstring pondrías asInteger.

Espero te sirva.

Saludos

P.d: bienvenido al ClubDelphi


La franja horaria es GMT +2. Ahora son las 13:03:32.

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