Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   insertar nuevos datos (https://www.clubdelphi.com/foros/showthread.php?t=39481)

Max_E. 21-01-2007 16:36:40

insertar nuevos datos
 
hola atodos:

utilizo este codigo para actualizar los campos de cierto dato ya existente dentro de mi base de datos.

Código SQL [-]
query1.sql.text := Format('update medicinas set precio = %s, cantidad = %s, porcentaje = %s, minimo = %s where nombre = %s',[Eprec,Ecant,Eporc,Emin, QuotedStr(Enom)]);
query1.ExecSQL;

pero lo deseo hacer es insertar un nuevo dato seria algo asi?


Código SQL [-]
query1.sql.text := Format('insert medicinas set precio = %s, cantidad = %s, porcentaje = %s, minimo = %s where nombre = %s',[Eprec,Ecant,Eporc,Emin, QuotedStr(Enom)]);
query1.ExecSQL;

esto no funciona logicamente, podrian ayudarme con esto, gracias de ante mano por la ayuda brindada.

roman 21-01-2007 17:53:03

Código SQL [-]
insert into medicinas
(precio, cantidad, porcentaje, minimo)
values (%s, %s, %s, %s)

Aunque quizá te convenga más usar parámetros en lugar de Format:

Código SQL [-]

insert into medicinas
(precio, cantidad, porcentaje, minimo)
values (:precio, :cantidad, :porcentaje, :minimo)

Luego sustituyes los parámetros antes de ejecutar la consulta:

Código Delphi [-]
query1.ParamByName('precio').AsString := Eprec;
query1.ParamByName('cantidad').AsString := Ecant;
query1.ParamByName('porcentaje').AsString := Eporc;
query1.ParamByName('minimo').AsString := Emin;

query1.Open;

// Saludos

Max_E. 21-01-2007 19:54:50

no inserta el nuevo valor
 
hola
al utilizar los codigos me sale error con el mensaje (el campo 'nombre' es de un tipo desconocido) y ademas en los codigos anteriores no veo como se ingresa el nuevo nombre al quien se le añadira sus valores de precio, cantidad, etc

ya intente solo adicionar asipero no funciona tampoco
Código Delphi [-]
query2.ParamByName('nombre').AsString := 'nuevo';
query2.ParamByName('precio').AsString := '15';
query2.ParamByName('cantidad').AsString := '110';
query2.ParamByName('porcentaje').AsString := '12';
query2.ParamByName('minimo').AsString := '15';

query2.Open;

Código SQL [-]
insert into medicinas
(nombre, precio, cantidad, porcentaje, minimo) 
values (:nombre, :precio, :cantidad, :porcentaje, :minimo)


podrias darme una ayuda mas...

roman 21-01-2007 20:20:14

El campo nombre lo quité de la consulta porque no tiene mucho sentido una cláusula where en una consulta de inserción.

// Saludos


La franja horaria es GMT +2. Ahora son las 18:14: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