How do I connect to Google Cloud SQL Server using C#?(如何使用C#连接到Google Cloud SQL Server?)
问题描述
我刚刚在Google Cloud平台上设置了一个SQL Server。&我在那里创建了一个数据库和表。我使用了微软的SQL Server Management Studio(SSMS)来连接和创建数据库和表。这一切都奏效了。我根据Google的Cloud SQL说明设置了代理地址127.0.0.1:1443。这一切都奏效了。 但是,我想要做的是使用C#应用程序连接到这个远程服务器。我在我的机器上使用C#程序连接到SQL Server没有问题,但我不知道如何配置才能连接到Google Cloud平台上远程程序上的程序。对于我的代码,我使用System.Data.SqlClient
库。
我的连接字符串如下。希望下面的代码足以告诉您发生了什么。当我调用loadInfoFromDatabase()
时,它在点击`Connection.Open()时失败。在下面的代码中,我在它旁边写了&FAIES HERE。
连接字符串是在尝试了不同的方法后才猜测出来的。如有任何帮助,我们将不胜感激。
谢谢!
public string _connectionString = @"Server=127.0.0.1:1443;Database=MarsDatabase;User Id=sqlserver;Password=AAABBBCCC";
private void loadInfoFromDatabase()
{
string firstName, middleName, lastName, email, password, assignedTables;
string connectionString;
SqlDataReader dataReader;
connectionString = _connectionString;
using (SqlConnection connection = new SqlConnection(connectionString))
{
connection.Open(); //FAILS HERE...
SqlCommand command = connection.CreateCommand();
SqlTransaction transaction;
// Start a local transaction.
transaction = connection.BeginTransaction("loadInfoFromDatabse");
// Must assign both transaction object and connection
// to Command object for a pending local transaction
command.Connection = connection;
command.Transaction = transaction;
try
{
command.CommandText = "Select * From Info";
// Attempt to commit the transaction.
dataReader = command.ExecuteReader();
while (dataReader.Read())
{
...
}
dataReader.Close();
command.Dispose();
// connection.Close();
transaction.Commit();
Console.WriteLine("Selection from managers table worked.");
}
catch (Exception ex)
{
}
}
}
推荐答案
我看到您正在使用Cloud SQL Proxy通过Tcp连接到SQL Server实例。
问题出在您的连接字符串上,因为您缺少tcp前缀。通过查看ConnectionString
属性上的Server
,您可以看到其中的说明:
tcp格式必须以前缀";tcp:";开头。(例如,服务器=tcp:服务器名,端口号)
要解决此问题,请将您的连接字符串更改为:
@"Server=tcp:127.0.0.1,1443;Database=MarsDatabase;User ID=sqlserver;Password=AAABBBCCC";
这篇关于如何使用C#连接到Google Cloud SQL Server?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何使用C#连接到Google Cloud SQL Server?
基础教程推荐
- 有没有办法忽略 2GB 文件上传的 maxRequestLength 限制? 2022-01-01
- c# Math.Sqrt 实现 2022-01-01
- 为什么Flurl.Http DownloadFileAsync/Http客户端GetAsync需要 2022-09-30
- 将 XML 转换为通用列表 2022-01-01
- 如何激活MC67中的红灯 2022-01-01
- MS Visual Studio .NET 的替代品 2022-01-01
- SSE 浮点算术是否可重现? 2022-01-01
- 将 Office 安装到 Windows 容器 (servercore:ltsc2019) 失败,错误代码为 17002 2022-01-01
- 如何在 IDE 中获取 Xamarin Studio C# 输出? 2022-01-01
- rabbitmq 的 REST API 2022-01-01