FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
Modificar Registro
Hola como estan todos
Necesito Modificar un registro de mi base de dato, estoy utilizando SQL Server 2008, delphi 7 y esoy usando el componente adoquery. Lo primero que hago es buscar el registro que necesito y me lo trae sin dificultad, pero cuando presiono el boton de modificar me da un error. En el Edit(editebibuscar) a si se llama el edit, pongo el numero a modificar y me da un error. voy a poner parte del codigo. // Modifica los Datos en la Base de Datos AdoItebiBuscar.SQL.Clear; AdoItebiBuscar.Sql.Text:='Update into Itebis (Itebis) values(:Itebis)'; AdoItebiBuscar.Parameters.ParamByName('Itebis').Value:= strtoint(EDItebiBuscar.text); AdoItebiBuscar.ExecSQL; ShowMessage('Registro Modificado'); no se que es lo que estoy haciendo mal, por favor si alguien puede ayudarme se lo agradeceria mucho. |
#2
|
||||
|
||||
Ahora mismo no encuentro mi bola de cristal para adivinar el error que te sale aunque trataré de adivinar echando las cartas o leyendo los posos del café
Bromas aparte, no conozco la variante de lenguaje sql del mssql, pero un update "normal" no se escribe así: Código:
AdoItebiBuscar.Sql.Text:='Update into Itebis (Itebis) values(:Itebis)'; Código:
update tutabla set campo= valor Por ejemplo, si quieres modificar el sueldo del trabajador con código 25, sería algo así como: Código:
update tbTrabajadores set sueldo=2000 where codigotrabajador=25
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
es correcto en parte lo que quieres hacer, pero en el update debes de decirle al motor que campos vas a modificar la sintaxis a mi juicio correcta es:
donde tienes que cambiar los parámetros correspondientes,
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#4
|
|||
|
|||
Modificar registro
Aziraid como estas hermanos espero que estes bien
Casimiro tiene razon lo que copie fue un insert pensando que solo debia cambiarlo por un update. voy hacer los cambios como lo dijeron les contare luego haber si me funciona. |
#5
|
|||
|
|||
modificar registro
Muchachos todavia no me funciona puse el codigo de la siguiente forma.
// Modifica los Datos en la Base de Datos AdoItebiBuscar.SQL.Clear; AdoItebiBuscar.Sql.Text:='Update Itebis set Itebis:= :Itebis where Itebis:= :clave '; AdoItebiBuscar.Parameters.ParamByName('Itebis').Value:= strtoint(EDItebiBuscar.text); AdoItebiBuscar.ExecSQL; ShowMessage('Registro Modificado'); AzidRain no se que me quisiste decir con la palabra ':clave' que usaste en el query. la tabla se llama itebis y el campos de la base de dato se llama itebis cuando introdusco el valor en el edit(editebibuscar) ejemplo: pongo un 30 y le doy a boton modificar me arroja el siguiente error. project synapse.exe raised exception class econvert error with message "30" 'is not a valid integer value'. process stopped. Use step or run to continue. miren el codigo a ver si esta bien porque creo que ahi es mi error, yo no tengo mucho tiempo programando ayudende por favor. |
#6
|
||||
|
||||
Se supone que tienes una tabla con varios campos, ¿puedes poner aquí la estructura de la misma?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
|||
|
|||
modificar registro
ok entendi
Lo que necesito es madificar un registro de una tabla puse el codigo para ver que estoy haciendo mal ese es todo el codigo que tengo en el boton modificar, si puedes hacer un ejemplo te lo agradeceria la tabla se llama "itebis" el campo a modificar de la tabla se llama "itebis" y estoy usando un adoquery excusame lo que pasa es que soy nuevo programando en delphi y tambien en este foro no conozco mucho las reglas. ayudame por favor. |
#8
|
||||
|
||||
Falta indicar que registro es el que se debe modificar, supongamos que es el que tiene el campo itebis=9 y lo vas a cambiar por un valor que captures en un edit, entonces Debe ser así:
__________________
AKA "El animalito" ||Cordobés a mucha honra|| |
#9
|
|||
|
|||
modificar registro
AzidRain te voy a poner todo a ver si puedes dar con mi problema
Estoy usando sql server 2008, delphi 7 y componente adoquery La estructura de la base de dato es la siguiente: La base de dato se llama "Synapse" y la tabla "Itebis" Estructura de la Tabla Itebis Column Name Data Type Allow Nulls ------------------------------------------------------------------------ Codigo Int Fecha Date Itebis char(3) Lo que deseo es modificar los datos solamente del campo itebis los demas se quedan igual. Tengo un boton llamado modificar que es donde tengo el problema, puse el codigo siguiente pero no me funciono. // Modifica los Datos en la Base de Datos AdoItebiBuscar.SQL.Clear; AdoItebiBuscar.Sql.Text:='Update Itebis set Itebis:= :Itebis where Itebis:= :itebis'; AdoItebiBuscar.Parameters.ParamByName('Itebis').Asstring:= EDItebiBuscar.text; AdoItebiBuscar.ExecSQL; ShowMessage('Registro Modificado'); el .Asstring no me lo reconoce no se porque cuando intento modificarlo me da el siguiente error: project synapse.exe raised exception class econvert error with message 'objeto parameters mal definido. Se proporciono informacion incorrecta o incoherente. Process stopped. Use step or run to continue. haber ahora si puedes ayudarme mejor con el codigo. |
#10
|
||||
|
||||
Cita:
'Update Itebis set Itebis:= :Itebis where Itebis:= :itebis'; Esa sentencia tiene DOS parámetros y sólo estás pasándolo Un parámetro. Piensa en esto: update tablaTrabajadores set sueldo=2000 where codigotrabajador=25 Como ves, hay DOS parámetros también. Entonces, si tú quieres cambiar el valor del campo itebis a todos los que cumplan una condición tienes que pasarle los DOS parámetros, por ejemplo: update TABLAitebis set CAMPOitebis=VALORQUEQUIERAS where CAMPOitebis='XXX' Si quieres cambiar todos los registros que tengan el valor 'AAA' en el campo itebis, y quieres ponerle el valor 'GGG', entonce sería:
He puesto Params[0] y Params[1] porque los dos son el mismo campo y puede resultar confuso. Te aconsejo encarecidamente un tutorial de SQL y además la lectura de un estupendo libro como La cara oculta de delphi.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal Última edición por Casimiro Notevi fecha: 26-06-2010 a las 01:47:22. |
#11
|
|||
|
|||
modificar registro
casimiro dejame ver si entendi
update itebis set itebis = editebisbuscar where itebis = editebisbuscar casimiro hermano no entiendo puedes hacer el codigo para verificar mejor excusame es que no se mucho de programacion |
#12
|
||||
|
||||
Cita:
Cita:
Creo que primero de todo debes aclarar PERFECTAMENTE una cosa: ¿Tú qué quieres hacer?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#13
|
|||
|
|||
modificar registro
por medio a un edit modificar un registro eso es lo que deseo
tengo un edit llamado editebibuscar y deseo modificar el campo itebis de una tabla y no se como hacerlo si puedes leer mas arriba veras la estructura de la tabla solo necesito el codigo para modificar ese registro estoy usando adoquery. por favor |
#14
|
||||
|
||||
Cita:
Si tú quieres modificar el valor de un campo de un registro, entonces necesitas dos cosas: el valor que quieres darle al campo y el registro que quieres modificar. Son DOS parámetros. Tal y como te lo he explicado antes, para que lo veas con un ejemplo claro, te lo repito: update tablaTrabajadores set sueldo=2000 where CodigoTrabajador=15 En ese código que he puesto se va a modificar el campo 'sueldo' del registro que corresponde al trabajador que tiene el codigo 15, ¿ok?, son DOS parámetros que necesito pasarle, hay muchas formas de hacerlo, por ejemplo, según tu código sería algo así: Pues sólo has de adaptarlo a tu código, ya sabes, necesitas el edit con el valor que quieras darle a tu campo y el edit con el valor del registro que quieres modificar, porque si no lo pones entonces modificaría todos los resgistros de la tabla. Y no es por hacerme pesado, pero te aconsejo encarecidamente un tutorial de SQL y además la lectura de un estupendo libro como La cara oculta de delphi.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#15
|
|||
|
|||
Modificar Registro
Casimiro muchas gracias ya si funciono
Lo que sucede es que no se programar mucho gracias por tu paciencia y tambien a Azirain por su ayuda. Casimiro baje el manual de sql y el de delphi que me enviaste lo voy a comenzar a estudiar muchas gracias a todos. |
#16
|
||||
|
||||
Estupendo, ya nos contarás los progresos que vas haciendo
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#17
|
|||
|
|||
Modificar datos.
Hola a todos. Aqui va, un poco de ayuda.
Uso del delphi XE2, y firebir 2.5... Se utilisa: IBquery... Campo a modificar: Dias_Trabajados, Monto... Utilizo un edit donde a sido cargado el dato que se va a modificar. Y tengo un boton de modificar... Este es el codigo: if application.MessageBox('DESEA GUARDAR?','guardar un Registro', MB_ICONQUESTION OR MB_YESNO) = ID_YES then begin if Edit3.Text='' then begin Showmessage('Debe Incluir el codigo'); end else begin Dmodulo.Asistencia_Madre.SQL.Clear ; Dmodulo.Asistencia_Madre.SQL.Add('select * from Asistencia_Madre where CEDULA=:A'); Dmodulo.Asistencia_Madre.ParamByName('A').Value:=EDIT3.Text; Dmodulo.Asistencia_Madre.Open; if Dmodulo.Asistencia_Madre.FieldByName('CEDULA').AsString<>'' then begin Dmodulo.Asistencia_Madre.SQL.Clear ; Dmodulo.Asistencia_Madre.SQL.Add(' update Asistencia_Madre set Tipo_documento=:Tipo_documento, DIAS_TRABAJADO=IAS_TRABAJADO, Monto=:Monto where CEDULA=:CEDULA '); Dmodulo.Asistencia_Madre.ParamByName('CEDULA').Value:=Edit3.Text; Dmodulo.Asistencia_Madre.ParamByName('Tipo_documento').Value:=Dmodulo.Asistencia_Madre.FieldByName(' Tipo_documento').AsString; Dmodulo.Asistencia_Madre.ParamByName('DIAS_TRABAJADO').Value:=Edit4.Text; Dmodulo.Asistencia_Madre.ParamByName('Monto').Value:=Edit20.Text; Dmodulo.Asistencia_Madre.ExecSQL; Dmodulo.ibt.Commit; Dmodulo.Asistencia_Madre.SQL.Clear ; Dmodulo.Asistencia_Madre.SQL.Add('select * from Asistencia_Madre '); Dmodulo.Asistencia_Madre.Open; SHOWMESSAGE('A sido Modificado'); end; end; end; _______________________ Espero que le sirva.Dlb... |
#18
|
||||
|
||||
Recuerda poner los tags al código fuente, ejemplo:
Gracias
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
Modificar Registro de DBGrid | BlueSteel | Firebird e Interbase | 6 | 11-03-2008 20:10:30 |
Modificar registro | Elite237 | OOP | 4 | 03-08-2007 05:27:21 |
Modificar un Registro en un TMDOQuery | KAYO | Firebird e Interbase | 4 | 30-07-2007 23:43:02 |
Como modificar un registro? | Telemaco | Conexión con bases de datos | 4 | 20-02-2004 17:45:48 |
modificar olo un registro | Irina | SQL | 1 | 26-05-2003 14:41:59 |
|