我有一个桌面应用程序(用 c# 开发),它将使用 SQL SERVER 数据库。该数据库位于远程数据库服务器上。我需要连接到此数据库服务器上的该数据库并与该数据库进行一些事务。
我有互联网连接。我知道这个数据库服务器中的 sql server 的 ip 地址和端口号。
那么连接该数据库服务器的步骤是什么?
答案1
恕我直言:让 SQL Server 监听公共 IP 地址并不安全!您应该使用 VPN 或至少使用 ssh 隧道。
无论如何,尝试在 MSSQL 客户端配置实用程序中创建一个带有 IP 地址的别名。
答案2
您可以在 App.config 中定义连接字符串:
<connectionStrings>
<add name="nameOfThisConnectionString" connectionString="Data Source=databaseserver; Initial Catalog=database;User Id=username;Password=password"/>
</connectionStrings>
然后就可以使用连接字符串执行命令了:
string connectionString = ConfigurationManager.ConnectionStrings["nameOfThisConnectionString"].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString );
connection.Open();
SqlCommand command = new SqlCommand("Select count(*) from members", connection);
int amount= (int)(command.ExecuteScalar());
labelamount.Text = amount.ToString() + " records";
connection.Close();
就是这样。您还可以使用其他查询,例如:
string connectionString = ConfigurationManager.ConnectionStrings["nameOfThisConnectionString"].ConnectionString;
SqlConnection connection = new SqlConnection(connectionString );
connection.Open();
SqlCommand command = new SqlCommand("Select * from Contact order by Name", connection);
SqlDataReader dataReader = command.ExecuteReader();
while (dataReader.Read())
{
ListViewItem item = new ListViewItem(dataReader["ID"].ToString());
item.SubItems.Add(dataReader["Name"].ToString());
item.SubItems.Add(dataReader["Email"].ToString());
listViewContacts.Items.Add(item);
}
dataReader.Close();
connection.Close();
使用这两个命令你应该能够让它工作。