Problema: Trabajo en una red, con su propio servidor de base de datos, y allí ya no es una sola línea de código.
Solución: crear vía código la conexión a la base de datos.
¿Por qué? Porque cada usuario que se conecta a la base, tiene sus propios permisos, que el administrador de la base de datos le ha asignado.
No voy a decir como crear los usuarios en la base de datos y mucho menos como darle los permisos, puesto que ese es otro problema aparte. Por ahora supondré que ya tengo creados los usuarios con sus respectivos permisos.
A pesar de la belleza gráfica con la que se maneja el visual studio, no utilizo la opción origen de datos que crea una conexión transparente. ¿Porque? Porque los dataset y datatable que se crean junto a la conexión no me permiten la flexibilidad que necesito. Así que, ¡mano al código!
Dim conexion As String 'Variable que contiene toda la línea de conexión 'Creamos línea por línea la conexión conexion = "Data Source=" & Nombre_del_servidor_BD & ";" 'El nombre del servidor de base de datos (que en mi caso es SQL Server) conexion = conexion + "Initial Catalog=" & Nombre_de_la_base_de_datos_inicial & ";" 'El nombre de la base de datos que queremos utilizar al iniciar conexion = conexion + "Integrated Security=False;" 'Pongo false porque la seguridad depende de cada conexión conexion = conexion + "User ID=" & Nombre_del_usuario_BD & ";" 'Nombre del usuario con el que se conecta a la base de datos conexion = conexion + "Password=" & Contraseña_del_usuario 'Esto tiene muchas maneras de trabajar, puede encriptarse o enviarse por parámetro oculto (como en mi caso)
Esta línea genera la conexión para poder abrir la base con sus datos y se usa con la siguiente línea
'Abre y cierra automáticamente la conexión Using connection As SqlConnection = New SqlConnection(conexion) 'Aquí se escribe lo que se desee hacer con la conexión 'Y otros problemas que veremos más adelante End Using