problema en un proyecto de visualbasic .net de gestion
Publicado por jose angel (3 intervenciones) el 13/04/2020 17:20:22
De antemano, agradecer a quien se moleste en leer mi problema y gratitud infinita si ademas me resuelve el mismo.
El problema es: proyecto de visual basic .net de gestion de facturacion,almacen,contabilidad etc. Estoy a punto de finalizarlo y de pronto y despues de hacer muchos formularios similares al del problema, desde hace unos dias, el proyecto se comporta de una forma extraña, paso a decribirlo.
El programa consiste en leer una tabla, recorrer un recordset o como se llame en .net, y por cada registro leido hacer un update de ese mismo registro leido. He hecho muchos similares y sin problema, desde hace una semana, no hace el update y da error de que no ejecuta la sentencia SQL de UPDATE. Ademas y segun parece no es cuestion de este programa y de esta tabla, he hecho otro y hace lo mismo, parece como si sqlserver o .net, tuviesen una variable que desde entonces al recorrer ese contenedor o recordset bloquea los registros.
Ejemplo:
Este trozo de codigo no es el real pero es una muestra sencilla de lo que pasa ahora.
Pruebas que hice para averiguar que es lo que pasa; entre otras muchas una muy clara:
paro el programa en la sql, la copio, la llevo a sqlserver, la ejecuto y me queda colgada. Aparentemente es porque esta pillado ese articulo en el recorrido del recordset.
Despido el proyecto, ejecuto la sql en sqlserver directamente y la ejecuta de forma correcta.
El problema es: proyecto de visual basic .net de gestion de facturacion,almacen,contabilidad etc. Estoy a punto de finalizarlo y de pronto y despues de hacer muchos formularios similares al del problema, desde hace unos dias, el proyecto se comporta de una forma extraña, paso a decribirlo.
El programa consiste en leer una tabla, recorrer un recordset o como se llame en .net, y por cada registro leido hacer un update de ese mismo registro leido. He hecho muchos similares y sin problema, desde hace una semana, no hace el update y da error de que no ejecuta la sentencia SQL de UPDATE. Ademas y segun parece no es cuestion de este programa y de esta tabla, he hecho otro y hace lo mismo, parece como si sqlserver o .net, tuviesen una variable que desde entonces al recorrer ese contenedor o recordset bloquea los registros.
Ejemplo:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
dim cmd as new sqlcommand
dim dr as sqldatareader
dim SQL as string = ""
SQL= "Select * from articulos"
cmd = New SqlCommand(SQL, conexion)
dr=cmd.ExecuteReader
while dr.Read()
SQL="Update articulos set nombre='boligrafo bic' where codigo=" & dr("codigo")
ejecutar la sql mediante una funcion que tengo en otro trozo de codigo.
end while
cmd=nothing
dr=nothing
Este trozo de codigo no es el real pero es una muestra sencilla de lo que pasa ahora.
Pruebas que hice para averiguar que es lo que pasa; entre otras muchas una muy clara:
paro el programa en la sql, la copio, la llevo a sqlserver, la ejecuto y me queda colgada. Aparentemente es porque esta pillado ese articulo en el recorrido del recordset.
Despido el proyecto, ejecuto la sql en sqlserver directamente y la ejecuta de forma correcta.
Valora esta pregunta


0