Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: Xephiro en 5 Agosto 2006, 02:25 am



Título: Ayuda con DB ADO
Publicado por: Xephiro en 5 Agosto 2006, 02:25 am
Bueno mi pregunta es si hay alguna manera de ponerle instrucciones al VB como las que se le ponen en una pagina php para que se actualize alguna DB

como

UPDATE dbo.MI_DATA SET tabla = text1.text


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 02:29 am
Bueno mi pregunta es si hay alguna manera de ponerle instrucciones al VB como las que se le ponen en una pagina php para que se actualize alguna DB

como

UPDATE dbo.MI_DATA SET tabla = text1.text

si

http://foro.elhacker.net/index.php/topic,127987.0.html


Título: Re: Ayuda con DB ADO
Publicado por: Xephiro en 5 Agosto 2006, 02:32 am
XD me podrias decir como? ... o de que manera lo puedo usar porque en forma directa poner eso no te acepta


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 02:36 am
XD me podrias decir como? ... o de que manera lo puedo usar porque en forma directa poner eso no te acepta

not e acepta el k?



Título: Re: Ayuda con DB ADO
Publicado por: Xephiro en 5 Agosto 2006, 02:39 am
Cuando pongo esto

UPDATE dbo.MI_DATA SET tabla = text1.text


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 02:48 am
Cuando pongo esto

UPDATE dbo.MI_DATA SET tabla = text1.text


?????????????

ve al link k te envie y mirate lo que pone en el anda...


Título: Re: Ayuda con DB ADO
Publicado por: Xephiro en 5 Agosto 2006, 04:59 am
Bueno hay algo que no me resulta XD .. segun lo que vi deberia funcionarme pero no se porque no pasa nada, aunque quisas me puedan ayudar XD...

Código:
Dim Cn As ADODB.Connection, Cmd As ADODB.Command, Rec As ADODB.Recordset
Dim Sql As String

Private Sub Command1_Click()
Sql = "UPDATE dbo.MITABLA SET datos = '1' where memb = 'Hacktor'"
Cn.Execute Sql
End Sub

Nose si este bien eso ...


Título: Re: Ayuda con DB ADO
Publicado por: soplo en 5 Agosto 2006, 12:22 pm
¿como que no pasa nada?
¡claro que pasa!

pasa que pones datos a 1 donde memb sea 'Hacktor'

Si no pasa nada es porque no hay ningún memb='Hacktor'

o a lo mejor si pasa, pero no has actualizado el datagrid o algún otro control asociado a esos datos y por eso aunque los datos han cambiado tu sigues viendo los viejos

Suponiendo que fuera un datagrid, al final de ese código (justo seguido del cn.execute sql debería ir un
Código:
datagrid.refresh

Un saludo


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 13:25 pm
¿como que no pasa nada?
¡claro que pasa!

pasa que pones datos a 1 donde memb sea 'Hacktor'

Si no pasa nada es porque no hay ningún memb='Hacktor'

o a lo mejor si pasa, pero no has actualizado el datagrid o algún otro control asociado a esos datos y por eso aunque los datos han cambiado tu sigues viendo los viejos

Suponiendo que fuera un datagrid, al final de ese código (justo seguido del cn.execute sql debería ir un
Código:
datagrid.refresh

Un saludo


dbo.tabla...... que se supone que pones?
basededatos.tabla espero...
con poner el nombre de la tabla sobra... pero mi duda es si realmente pones dbo. y el nombre...


Título: Re: Ayuda con DB ADO
Publicado por: el_chente23 en 5 Agosto 2006, 18:35 pm
El Codigo esta correcto, lo unico es que esta incompleto, le falta la cadena de conexion a la base de datos.

Código:
Dim Cn As ADODB.Connection, Cmd As ADODB.Command, Rec As ADODB.Recordset
Dim Sql As String

Private Sub Command1_Click()
'Para sql server
cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=Nom Servidor;INITIAL CATALOG=Base de datos;USER ID=usuario sql;PASSWORD=pass usuario sql;DNS=;"

'Para access
cn.connectionstring="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=ruta y nom del archivo access"

cn.cursorlocation=adUseClient
cn.open
Sql = "UPDATE dbo.MITABLA SET datos = '1' where memb = 'Hacktor'"
set rec=Cn.Execute(sql, , adCmdText)
End Sub

Ese seria mas o menos el codigo para ejecutar esa sentencia y cualquier otra(Delete, Select, etc).

Saludos


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 18:38 pm
yo las updates y deletes las hago directamente sobre la conexion


sql = "update tabla set dato1=0 where condicion=2"
cn.Execute sql


Título: Re: Ayuda con DB ADO
Publicado por: Xephiro en 5 Agosto 2006, 21:55 pm
Código:
cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=Nom Servidor;INITIAL CATALOG=Base de datos;USER ID=usuario sql;PASSWORD=pass usuario sql;DNS=;"

Me sale un error en esta lines ... yo la deje asi... pero nose porque me da

Código:
cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=(local);INITIAL CATALOG=MIDB;USER ID=Hacktor;PASSWORD=123456;DNS=MIDNS;"

Pero asi con los datos cambiados no me resulta ... que dato estoy poniendo mal???


Título: Re: Ayuda con DB ADO
Publicado por: Hans el Topo en 5 Agosto 2006, 22:29 pm
Código:
cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=Nom Servidor;INITIAL CATALOG=Base de datos;USER ID=usuario sql;PASSWORD=pass usuario sql;DNS=;"

Me sale un error en esta lines ... yo la deje asi... pero nose porque me da

Código:
cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=(local);INITIAL CATALOG=MIDB;USER ID=Hacktor;PASSWORD=123456;DNS=MIDNS;"

Pero asi con los datos cambiados no me resulta ... que dato estoy poniendo mal???
asi inicio yo las conexiones y los auxiliares para un access

    cn.Provider = "Microsoft.Jet.OLEDB.4.0" 'en este caso es para Access 2000
    cn.ConnectionString = App.Path & "/nombredatabase.mdb"
    cn.Open
    Cmd.CommandType = adCmdText
    Cmd.ActiveConnection = cn
    rec.Open "tablita", cn, , adCmdText




Título: Re: Ayuda con DB ADO
Publicado por: soplo en 6 Agosto 2006, 00:15 am
A ver

Citar
Cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=(local);INITIAL CATALOG=MIDB;USER ID=Hacktor;PASSWORD=123456;DNS=MIDNS;"
Entiendo que has puesto bien el nombre del servidor, base de datos y dsn así que supongo que eso está bien

Luego va
Código:
cn.open ,usuario,clave

O bien lo puedes hacer de esta forma
Código:
dim Cn as adodb.connection, CnStr as string

Cnstr="provider=SQLOLEDB;DATA SOURCE=(local);INITIAL CATALOG=MIDB;USER ID=Hacktor;PASSWORD=123456;DNS=MIDNS;"

Dim Cn as new adodb.connection
Cn.open CnStr,usuario,clave
Cn.execute "update ... "

Un saludo


Título: Re: Ayuda con DB ADO
Publicado por: el_chente23 en 8 Agosto 2006, 03:24 am
Código:
Cn.connectionstring="provider=SQLOLEDB;DATA SOURCE=(local);INITIAL CATALOG=MIDB;USER ID=Hacktor;PASSWORD=123456;DNS=MIDNS;"
Creo que asi no funciona el data source, para SQL Server, tienes que poner el nombre del servidor (Nombre de la maquina donde tienes la bd).

Saludos


Título: Re: Ayuda con DB ADO
Publicado por: Xephiro en 10 Agosto 2006, 03:08 am
aque te refieres con nombre del servidor¿


Título: Re: Ayuda con DB ADO
Publicado por: el_chente23 en 10 Agosto 2006, 18:51 pm
El nombre del serivdor, seria el nombre de la pc donde tienes las base datos, en el caso que uses sql server para tu aplicacion.

Saludos