Cómo indicar la conexión a la base desde la que se ejecuta el código de un proyecto de SQL Server 2005.
Cuando escribimos código para ejecutar desde SQL Server 2005 (SQL CLR), por ejemplo, para crear un procedimiento almacenado desde Visual Basic 2005 o Visual C# 2005, y necesitamos indicar la conexión a la base de datos, la forma de hacerlo es diferente a la que usaríamos si estuviéramos accediendo "externamente", ya que estamos "dentro" de la propia base de datos, por tanto... solo debemos decirle que se conecte a esta misma base de datos desde la que estamos ejecutando el código.
Por ejemplo, si quieres acceder a una base de datos llamada prueba que están en la instancia local de SQLEXPRESS, tendrías que usar una cadena de conexión como esta:
Data Source=(local)\sqlexpress;Initial Catalog=prueba;Integrated Security=True
Y el objeto SqlConnection lo tendrías que crear así:
Para Visual Basic:
Using cnn As New SqlConnection(cadena_conexion)
Para C#:
using (SqlConnection cnn = new SqlConnection(cadena_conexion))
Y si accedes, por ejemplo desde un procedimiento almacenado de SQL Server 2005 creado con Visual Basic o con C#, tendrías que hacerlo así:
Para Visual Basic:
Dim cnn As New SqlConnection("context connection = true")
Para C#:
SqlConnection cnn = new SqlConnection("context connection = true");
Es decir, tendrías que usar context connection = true como cadena de conexión.
Y esto es todo... espero que te sea de utilidad.
Nos vemos.
Guillermo
System.Data.SqlClient