CLR: .Net / Mono / Boo / Otros CLR => VB .NET => Mensaje iniciado por: luiz1919 en Sábado 5 de Abril de 2008, 23:51
Título: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: luiz1919 en Sábado 5 de Abril de 2008, 23:51
Hola amigos, desde hace un tiempo el vb 2005 me está volviendo loco con las consultas sobre una base de datos SQL 2005.
El caso es que tengo un sencillo programa de inserciones, borrado y modificaciones. Las consultas sobre la base de datos me las hace a la perfeccion pero no consigo de ninguna manera insertar, modificar o eliminar elementos de la base de datos.
Public ConexionStr As String = "Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\DataBaseSports.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True"
Public _SqlConexion As Data.SqlClient.SqlConnection _SqlConexion = New SqlClient.SqlConnection _SqlConexion.ConnectionString = ConexionStr _SqlConexion.Open()
El caso es que cuando voy paso a paso, el programa no da ningun tipo de error, es decir, se comporta como si hubiera insertado los datos, pero cuando reviso la base de datos está completamente vacía. Yo ya no sé que hacer, he intentado con transacciones y demás historias pero me estoy volviendo loco y esto no funciona.
Puede alguien ayudarme por favos......GRACIAS.
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: junahu en Martes 15 de Abril de 2008, 02:22
has probado a no poner "Connect Timeout=30"
mañana le hecho un vistazo a tu codigo y te digo si a mi me pasa lo mismo. Yo uso sql server 2005 y VB 2005 y no he tenido problemas.
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: abel_cuentas_b en Martes 15 de Abril de 2008, 03:01
hola luiz1919, te cuento que esto de las inserciones, borrados, modificaciones, es un poco mas complicado, sin querer decir que no se puede hacer, ya que te toca descriminar todas las caracteristicas de los objetos, en tu caso veo:
asi como lo ves, es algo que hay que analizar bastante y la verdad hay poca informacion en la web, te animo a que sigas investigando y si te puedo colaborar en algo mas nos estamos comunicando, saludos
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: Mollense en Martes 15 de Abril de 2008, 03:27
Utiliza Try/Catch para ver si te da alguna excepción:
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: luiz1919 en Jueves 24 de Abril de 2008, 18:52
Muchas gracias, voy a probar estos ejemplos que me habeis dejado.
Ayer estuve probando con el mismo código y, es extraño porque insertar inserta, porque puedo ver como el índice de nuevos registros en mi programa se incrementa automaticamente cuando inserto, es decir, la informacion del nuevo registro permanece en memoria en algun sitio, pero no sé donde, porque al cerrar el programa la base de datos permanece en blanco.
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: luiz1919 en Jueves 24 de Abril de 2008, 19:38
Nada de nada. He intentado utilizar tu código abel_cuentas_b y algunos otros ejemplos y nada de nada.
Inserta, porque cuando intento insertar 2 veces lo mismo me da error de clave duplicada, pero cuando cierro el programa todo desaparece misteriosamente sin saber por qué.
Si teneis alguna idea mas, hacedmela llegar por favor. Si necesitais el programa con el código os lo puedo pasar para que le echeis un vistazo, porque yo desisto, esto es imposible.
Título: Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
Publicado por: krnl64 en Miércoles 7 de Mayo de 2008, 06:23
Intenta insertar los datos asi:
Código: Text
Query=String.Format("insert into customers values ({0},{1}....",textbox1.tex,texbox2.text...)
Mycommand.Connection= SqlConexion
MyCommand.CommandText=Query
MyCommand.ExecuteNonQuery
Por ejemplo supon que tienes una tabla que se compone de Id, Nombre , Descrip y se llama tmp
haces esto:
Código: Text
Query=String.Format("insert into tmp values({0},'{1}','{2}');",Txt1.Text,Txt2.Text,Txt3.Text)
Mycommand.Connection= SqlConexion
MyCommand.CommandText=Query
MyCommand.ExecuteNonQuery
Importante el detalle de la comillas.
Como yo te puse no debe de haber problemas; Estoy harto de hacer esas cosas. Si ves que te sigue petando, quiza se el driver que no sea el correcto, o una cadena de conexion erronea. No se decirte más.