| |||
Visual Basic y SQL Necesito hacer un programa en visual basic que abra una base de datos de sql y muestre los datos de sus tablas. He visto preguntas similares pero ninguna de las respuestas me ha ayudado a realizar la conexión. Me podrían dar un código completo de un programa que lo único que haga sea enlazar a una base de datos y abrirla? Resalto completo porque no me refiero a solo la instruccion de conexion sino a donde y como ponerla. Gracias |
| |||
Lo de donde poner la instruccion de apertura de la base de datos depende de cuando quieres que se conecte y lo accesible que quieres que sea, es decir, si quieres conectar pulsando un boton o si quieres conectar al abrir un formulario... Lo primero que tienes que hacer es agregar la referencia Microsoft Activex Data Object 2. Una vez agregada creas un objeto de la clase ADODB.Connection dim miconexion as New connection le asignas la cadena de conexion: miconexion.ConnectionString ="Provider= SQLOLEDB.1;Persist Security Info= False;Password=tupassword;User ID=tu user id;Initial Catalog=nombre de la base de datos;Data Source= nombre del servidor sql" miconexion.Open() ya tienes la conexion abierta |
| ||||
La sentencia de arriba es correcta, solo quería agregar un sitio que me parece interesante www.connectionstrings.com, muestra varias formas de conectarse a distintas base de datos. Saludos.
__________________ La población, sin embargo, sigue aumentando. COLE Laurent Gasser Tienes alguna duda :pensando: ? >>> www.google.com :aplauso: <<< |
| |||
Gracias a ambos, la conexion esta hecha pero... ahora no se como manipular la base de datos: pense que miconexion se podria usar como una variable de tipo database pero me dice que no coinciden los tipos, asi que necesito que por favor me digan como obtengo la base de datos a la que hice conexion y de pasada como obtengo las tablas de tal base de datos Última edición por c++p; 25/02/2005 a las 19:07 |
| |||
la verdad que yo aun estoy empezando en SQL, pero supongo que debes declarar un recorset, que es lo que te falta en la respuesta anterior dim miconexion as New connection dim Rst as New recorset |
| |||
Investigando en otras partes del foro vi que hacer, lo que me vino funcionando fue: Dim conexion As New adodb.Connection Dim tabla As New adodb.Recordset Private Sub Form_Load() conexion.ConnectionString = "Provider= SQLOLEDB.1;Persist Security Info= False; Integrated Security=SSPI;Password=mipass;User ID=miuser;Initial Catalog=midatabase;Data Source= miservidor" conexion.Open tabla.Open "select * from mitabla", conexion, adOpenStatic, adLockOptimistic End sub |
| |||
Hola a todos! Si la conexión fuese entre computadoras distintas (Visual está montado en un equipo que se encuentra en una red y SQL server en otro, q está fuera de la red), qué código se utilizaría para la comunicación? Me imagino que es similar al de la solución anterior, pero hay que incluir la dir IP; la pregunta sería en donde y si es necesario que estén en la misma red. |
| ||||
la verdad si esta fuera de tu red o son dos redes distintas tenes que colocar un coputadora con dos tarjetas de red y crear un Puente para puedan accesar las computadoras entre las dos redes.. nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
ok Gracias!... Pero estando en la misma red si visual esta en una computadora y el servidor SQL en una computadora remota, Como se modifica el código en este caso? Coloqué este código cn.ConnectionString = "Provider=sqloledb;Data Source=xxx.xxx.xxx.xxx,1433;Network Library=DBMSSOCN;Initial Catalog=Prueba;User ID=informix;Password=xxx;" cn.Open rs.Open "select * from pru1", cn, adoenkeyset, adLockOptimistic donde xxx.xxx.xxx.xxx es la IP de la computadora en la que se encuentra el servidor SQL Prueba es la base de datos User ID y Password= no estoy segura de que colocar aki Visual Arrojó el siguiente error: BDNETLIB [connetionopen (Conect()).]No existe el servidor SQL Server o se ha denegado el acceso al mismo Cual podrá ser el problema? Última edición por Siu; 04/03/2005 a las 09:33 Razón: Realización posterior de pruebas |
| ||||
Aunque la cadena de conexión q usas se supone que funciona utilizando la IP, te recomiendo que uses el nombre del servidor con la siguiente cadena:
Código:
En Data Source simplemente coloca el nombre del servidor (para saber cual es el nombre simplemente dirijite a la máquina donde esta instalado el motor de bd, ejecutas el Administrador de Servicios y en la parte superior donde dice Server, ese es el nombre, independientemente de la máquina donde se encuentre)Provider=SQLOLEDB.1;Password=contraseña;Persist Security Info=True;User ID=nombreusuario;Initial Catalog=nombrebasededatos;Data Source=nombreservidor Saludos.
__________________ La población, sin embargo, sigue aumentando. COLE Laurent Gasser Tienes alguna duda :pensando: ? >>> www.google.com :aplauso: <<< |
| ||||
alli esta la respuesta regularmente donde esta el nombre del SErvidor colocas la IP nos vemos..
__________________ * Antes de preguntar lee las FAQ, y por favor no hagas preguntas en las FAQ Sitio http://www.geoavila.com twitter: @GeoAvila |
| |||
Mi pregunta es la siguiente yo tengo una aplicacion en visual con bases de datos en access y me gustaria ponerlo en red el programa, q tendria q hacer xq no paro de leer y me estoy liando... venga un saludo y muchas gracias de antemano |
| ||||
Solo en la ruta de la konexion, donde pones la ruta del archivo de acces, pon la ruta de red, por ejemplo: \\MiPcEnRed\C:\MiBase.mdb espero ke funcione.
__________________ [email protected] |