Miércoles 02 de diciembre de 2009 a las 10:20
hola gracias por tu atension.
bueno la verdad apenas esoy empezando con este lenguaje y estoy buscando la forma de como resolver el problema y encontre este codigo para conectar.
este codigo va en un combobox el cual busca el nombre del servidor
Private Sub cboInstancias_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles cboInstancias.SelectedIndexChanged
Dim bases() As String = basesDeDatos(cboInstancias.Text)
Me.cboBases.Items.Clear()
If Not bases Is Nothing Then
Me.cboBases.Items.AddRange(bases)
End If
' Seleccionamos la primera base
If Me.cboBases.Items.Count > 0 Then
cboBases.SelectedIndex = 0
End If
End Sub
este codigo va en el boton conectar
Private Sub btnConectar_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnConectar.Click
' Conectar y mostrar los datos
'
' La cadena de conexión
'"data source="& cboInstancias.Text & "; initial catalog=" & cboBases.Text & "; integrated security=yes"
Dim sCnn As String = "Server=" & cboInstancias.Text & "; " & _
"database=" & cboBases.Text & "; integrated security=yes"
Dim cnn As New SqlConnection(sCnn)
If existeTabla(cnn, "Prueba") = False Then
'MessageBox.Show("NO existe la tabla Prueba, que es la usada para este ejemplo.")
'Exit Sub
If MessageBox.Show("NO existe la tabla Prueba, que es la usada para este ejemplo." & vbCrLf & _
"¿Quieres crearla?", "No existe la tabla", _
MessageBoxButtons.YesNo) = DialogResult.Yes Then
If crearTablaPrueba() = False Then
Exit Sub
End If
Else
Exit Sub
End If
End If
' La cadena de selección
Dim sSel As String = "SELECT * FROM Prueba ORDER BY ID"
' Para traer solo los registros entre dos fechas
'sSel = "SELECT * FROM Prueba WHERE (FechaAlta >= '2006/02/01' AND FechaAlta <= '2006/02/05')"
'
' Comprobar si hay algún error
Try
' Crear un nuevo objeto del tipo DataAdapter
da = New SqlDataAdapter(sSel, cnn)
' Crear los comandos de insertar, actualizar y eliminar
Dim cb As New SqlCommandBuilder(da)
' Como hay campos con caracteres especiales,
' al usarlos incluirlos entre corchetes.
cb.QuotePrefix = "["
cb.QuoteSuffix = "]"
' Asignar los comandos al DataAdapter
' (se supone que lo hace automáticamente, pero...)
da.UpdateCommand = cb.GetUpdateCommand()
da.InsertCommand = cb.GetInsertCommand()
da.DeleteCommand = cb.GetDeleteCommand()
'
' Esta base de datos usa el ID con valores automáticos
da.MissingSchemaAction = MissingSchemaAction.AddWithKey
'
dt = New DataTable
' Llenar la tabla con los datos indicados
da.Fill(dt)
'
Me.GroupBox1.Enabled = True
Me.GroupBox1.Text = "Conexión realizada"
' Habilitar los controles
For Each c As Control In Me.GroupBox1.Controls
c.Enabled = True
Next
' Y mostrar el primer registro
If dt.Rows.Count > 0 Then
btnFirst_Click(Nothing, Nothing)
Else
fila = -1
Me.btnActualizar.Enabled = True
Me.btnEliminar.Enabled = False
End If
Catch ex As Exception
MessageBox.Show("ERROR al conectar o recuperar los datos:" & vbCrLf & _
ex.Message, "Conectar con la base", _
MessageBoxButtons.OK, MessageBoxIcon.Error)
End Try
End Sub
o tambien lo intente hacer mediante odbc y esta es la cadena de conexion
...............................
o tambien lo intente por medio de el ODBC
Class Form1:
Imports System.Data
Imports Microsoft.Data.ODBC
botón SQL Server:
Dim cn As OdbcConnection
cn = New OdbcConnection("DRIVER={SQL Server};SERVER=dany\SQLEXPRESS ;UID=sa;" & _
"PWD=sasa;DATABASE=ADO_PRACTIC;")
Dim mystring As String = "select * from tblContacts"
Dim cmd As OdbcCommand = New OdbcCommand(mystring)
cn.Open()
MsgBox("Conectado")
cn.Close()
el nombre del equipo: dany.
nombre del servidor sql:dany\SQLEXPRESS
base de datos: ADO_PRCTIC
la verdad es que no se si se pueda con los express esta conexion o tengo que cambiar con los originales
15.1.- Respuesta, Fernando Berenguer Doménech
Jueves 03 de diciembre de 2009 a las 01:41
Se me olvidó una pregunta:
¿El programa es para entorno Windows o Web(ASP.NET)?
Con que versión de Visual Studio trabajas. Te lo pregunto porque yo estoy trabajando con la versión 2008 y hay diferrencias con las anteriores en algunas cosas.
Un saludo
15.2.- Respuesta, Fernando Berenguer Doménech
Jueves 03 de diciembre de 2009 a las 02:08
El siguiente enlace te explica como crear y comprobar la cadena de conexión para estar seguro de que es correcta.
http://www.mygnet.net/articulos/trucos/cadena_de_conexion_a_base_de_datos.1275
Un saludo.
PD: Si no te aclaras con los códigos o te sigue dando error avísame y lo miramos.
Si quieres mándame un mail a mi correo y te digo mi messenger para mirarlo sobre la marcha.
15.3.- Respuesta, Fernando Berenguer Doménech
Jueves 03 de diciembre de 2009 a las 02:12
Dani, perdona tantas respuestas pero lo he visto después.
Si tu servidor es SQLServer, la conexión que debes utilizar es SQL.
Para ello tienes la clase SQLClient en el espacio de nombres System.Data.SqlClient