FOROS PROFESIONALES
WINDEV
,
WEBDEV
y
WINDEV Mobile
Inicio
|
Mensajes recientes
|
Conéctese...
|
Desconectar
|
Español
Inicio
→
WINDEV Mobile 2024
→
SQLExec Update
SQLExec Update
Iniciado por Aaron Carballo, 15,oct. 2015 16:53 - 2 respuestas
Conéctese…
Aaron Carballo
#1
Publicado el 15,octubre 2015 - 16:53
I'm connected via web service to a sql database my connection seems to be ok the problem is at the time to execute an update. I have a looper that shows the database and I try to update when I touch a button, this is the code that I'm trying to use
SQLExec
(
"UPDATE PUESTOS SET NOMBRE ="
+
EDT_
Nombre
+
" APELLIDO ="
+
EDT_
Apellido
+
" PUESTO ="
+
EDT_
Puesto
+
" WHERE ID = "
+
STC_
ID
,
"QRY1"
)
Informar
0
0
Willian Fernando
#2
Miembro registrado
123 mensajes
Popularité : +46 (46 votes)
Publicado el 15,octubre 2015 - 21:02
Tu sentencia SQL esta mal, por lo que veo estas intentando actualizar Campos de tipo String/Varchar entonces debes proteger con Comilla simples los valores, tu codigo deberia estar algo como esto.
SQLExec
(
"UPDATE PUESTOS SET NOMBRE ='"
+
EDT_
Nombre
+
"' APELLIDO ='"
+
EDT_
Apellido
+
"' PUESTO ='"
+
EDT_
Puesto
+
"' WHERE ID = "
+
STC_
ID
,
"QRY1"
)
si el ID es numerico esta bien si no tambien lo debes proteger asi como los otros
Informar
0
0
adrianoboller
#3
Miembro registrado
3.660 mensajes
Popularité : +175 (223 votes)
Publicado el 17,octubre 2015 - 11:49
Prezados
Eu recomendo fazer de outra maneira, segue minha sugestão:
Sqlcodigo is
string
= [
UPDATE PUESTOS SET NOMBRE ='@Nombre@' , APELLIDO ='@Apellido@' , PUESTO ='@Puesto@' WHERE ID = @ID@
]
//note que aonde é string tem aspa simples e no id que é int não tem aspas simples e o @@ que eu uso é uma convenção de código minha para agora usar o réplica da linha acima não trocar textos que não devem ser substituídos assegurando a troca somente naquela posição.
Sqlcodigo
=
Replace
(
Sqlcodigo
,
"@Nombre@"
,
Edt_Nombre
)
Sqlcodigo
=
Replace
(
Sqlcodigo
,
"@Apelido@"
,
Edt_Apelido
)
Sqlcodigo
=
Replace
(
Sqlcodigo
,
"@Puesto@"
,
Edt_Puesto
)
Sqlcodigo
=
Replace
(
Sqlcodigo
,
"@ID@"
,
Edt_ID
)
//OBS.: Agora tá 100% certo o código no debug aqui nesse ponto a string está perfeitamente montada fácil localização e pode ser capturada na parte da plane Debug o sql se copiar e colar do debug no seu Manager Sql digamos do Mssql vai ter que funcionar. LEMBRO da questão do null se tiver que controlar use o Replace null que eu postei no forum oficial da PcSoft Bar.
SQLExec
(
Sqlcodigo
,
"QRY1"
)
//Da mais trabalho mas fica mais fácil de achar os erros... que são na maioria das vezes a falta de vírgula entre campos que faltou no exemplo do sr Carbalho e não por aspas simples quando é string ou não por quando for num podendo ser controlado isso com o Replacenull ou com um IF ou ainda com uma condição TERNÁRIA ou usar o StringBuilder.
Um forte abraço e sucesso
--
Adriano Jose Boller
______________________________________________
Consultor e Representante Oficial da
PcSoft no Brasil
+55 (41) 9949 1800
adrianoboller@gmail.com
skype: adrianoboller
______________________________________________
Informar
0
0
→ Volver a WINDEV Mobile 2024
WINDEV 2024
WEBDEV 2024
WINDEV Mobile 2024
WINDEV (versiones precedentes)
Français
English
Español
Portuguesa
Fermer cette fenêtre
Búsqueda Tipo
Sólo temas
Todos los mensajes
Periodo Buscar
Cualquier fecha
Última hora
Última 24 horas
Última semana
Último mes
Último año
Cancelar
Vista previa del mensaje
Añadiendo una imagen
Importar una imagen desde una URL
Enviar una imagen desde un archivo de su disco
Arrastrar un archivo o click en "Examinar..."
o
Cancelar
0%
WLanguage
SQL
XML, HTML
JAVA, Javascript
Texto