Lunes 23 de Diciembre de 2024, 09:14
SoloCodigo
Bienvenido(a),
Visitante
. Por favor,
ingresa
o
regístrate
.
¿Perdiste tu
email de activación?
Inicio
Foros
Chat
Ayuda
Buscar
Ingresar
Registrarse
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
VB .NET
(Moderador:
ElNapster
) »
Executenonquery() No Funciona Vb 2005 Con Sql 2005
« anterior
próximo »
Imprimir
Páginas: [
1
]
Autor
Tema: Executenonquery() No Funciona Vb 2005 Con Sql 2005 (Leído 3175 veces)
luiz1919
Nuevo Miembro
Mensajes: 3
Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
en:
Sábado 5 de Abril de 2008, 23:51 »
0
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.
El codigo es este:
-------------------------------------------------------------------------------------
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()
Query = "INSERT INTO Customers (ID_Customer,FirstName,LastName,Birthday,Address,ZIP,City,Country,DiscountCard,CardNumber) VALUES (" & MaxID & ",'" _
& txtFirstName.Text & "','" _
& txtLastName.Text & "','" _
& txtBirthday.Text & "','" _
& txtAddress.Text & "','" _
& txtZIP.Text & "','" _
& txtCity.Text & "','" _
& txtCountry.Text & "'," _
& HasDiscountCard & ",'" _
& NewCardCode & "')"
Dim myCommand As New SqlCommand(Query, _SqlConexion)
myCommand.ExecuteNonQuery()
If _SqlConexion.State <> ConnectionState.Closed Then
_SqlConexion.Close()
End If
-------------------------------------------------------------------------------------
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.
Tweet
junahu
Miembro activo
Mensajes: 97
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #1 en:
Martes 15 de Abril de 2008, 02:22 »
0
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.
abel_cuentas_b
Miembro activo
Mensajes: 39
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #2 en:
Martes 15 de Abril de 2008, 03:01 »
0
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:
& txtFirstName.Text & "','" _
& txtLastName.Text & "','" _
& txtBirthday.Text & "','" _
& txtAddress.Text & "','" _
& txtZIP.Text & "','" _
& txtCity.Text & "','" _
& txtCountry.Text & "'," _
& HasDiscountCard & ",'" _
& NewCardCode & "')"
te muestro un ejemplo, que realice para un programa de agenda:
actu.Parameters.Add(New SqlParameter("@Id", SqlDbType.Int, 15, "Id"))
actu.Parameters.Add(New SqlParameter("@Nombre", SqlDbType.NVarChar, 15, "Nombre"))
actu.Parameters.Add(New SqlParameter("@Apellidos", SqlDbType.NVarChar, 50, "Apellidos"))
actu.Parameters.Add(New SqlParameter("@Telefono", SqlDbType.Int, 15, "Telefono"))
actu.Parameters.Add(New SqlParameter("@Direccion", SqlDbType.NVarChar, 50, "Direccion"))
actu.Parameters("@Id").Value = Me.TextBox1.Text
actu.Parameters("@Nombre").Value = Me.NombresTextBox.Text
actu.Parameters("@Apellidos").Value = Me.ApellidosTextBox.Text
actu.Parameters("@Telefono").Value = Me.TelefonoTextBox.Text
actu.Parameters("@Direccion").Value = Me.DireccionTextBox.Text
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
Mollense
Miembro de PLATA
Mensajes: 1755
Nacionalidad:
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #3 en:
Martes 15 de Abril de 2008, 03:27 »
0
Utiliza Try/Catch para ver si te da alguna excepción:
http://msdn2.microsoft.com/en-us/library/f...6tz(VS.71).aspx
http://www.elguille.org/colabora/NET2005/c...s_en_VB.net.htm
"Los que renuncian son más numerosos que los que fracasan" H.F.
"No se cómo sería la III Guerra Mundial, pero la cuarta sería con piedras" A.E.
"Quién no fía no es de fiar..."
...no te quedes mirando.
luiz1919
Nuevo Miembro
Mensajes: 3
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #4 en:
Jueves 24 de Abril de 2008, 18:52 »
0
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.
luiz1919
Nuevo Miembro
Mensajes: 3
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #5 en:
Jueves 24 de Abril de 2008, 19:38 »
0
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.
krnl64
Miembro activo
Mensajes: 72
Re: Executenonquery() No Funciona Vb 2005 Con Sql 2005
«
Respuesta #6 en:
Miércoles 7 de Mayo de 2008, 06:23 »
0
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.
Salu2
Imprimir
Páginas: [
1
]
« anterior
próximo »
SoloCodigo
»
Foros
»
CLR: .Net / Mono / Boo / Otros CLR
»
VB .NET
(Moderador:
ElNapster
) »
Executenonquery() No Funciona Vb 2005 Con Sql 2005