【问题标题】:How do I connect to a SQL Server database server that IS NOT on localhost?如何连接到不在本地主机上的 SQL Server 数据库服务器?
【发布时间】:2016-06-30 19:09:47
【问题描述】:

我尝试连接的数据库位于 AWS 服务器上,并且我正在尝试编写一个从数据库中提取数据的 C# 脚本。我能找到的唯一教程是使用 localhost。这是我尝试过的一些代码:

static void Main()
{
    SqlConnection myConnection = new SqlConnection(
                                   "user id=MyUsername;" +
                                   "password=MyPassword;" + 
                                   "server=MyServerName.ctf1qojvktpk.us-west-2.rds.amazonaws.com:3306;" +
                                   "Trusted_Connection=yes;" +
                                   "database=MyDBName; " +
                                   "connection timeout=30");

    try
    {
        myConnection.Open();
    }
    catch (Exception e)
    {
        Console.WriteLine(e.ToString());
    }
}

【问题讨论】:

  • 需要更多信息才能有所帮助!你用的是什么编程软件? (即视觉工作室等......)?您是在创建 Web 应用程序、MVC 应用程序、winform 应用程序吗?谢谢!
  • 对不起!我正在使用 Visual Studio,目前正在尝试制作一个 winform 应用程序!
  • 您能否访问运行此代码的 AWS 服务器?数据库服务器的安全组和 VPC 呢...
  • 首先想到的是我会尝试使用 string.format 而不是巨大的字符串连接,即 new SqlConnection(string.format("user id={0}, password={1}, server={ 2}, etc..", user, pass, server, etc...))
  • 我只能连接到服务器并从我在这台计算机上编写和运行的 PHP 文件中获取数据。 :/ 不过,我根本无法使用这个 C# 代码连接它。另外,对不起,我不明白你问题的第二部分!我对此很陌生

标签: c# sql-server database visual-studio amazon-web-services


【解决方案1】:

它看起来像是一个 mySql 数据库。您需要为 .NET 安装 MySQL 连接器。

示例连接字符串

<add name="MyConnection" connectionString="server=myamazonserver.eu-central-1.rds.amazonaws.com;user id=rootusername;password=mypassword;database=mydatabasename; Convert Zero DateTime=True; Allow User Variables=True" providerName="MySql.Data.MySqlClient" />

或者纯代码

static void Main()
{
    SqlConnection myConnection = 
       new SqlConnection(
            "server=myamazonserver.eu-central-1.rds.amazonaws.com;user id=rootusername;password=mypassword;database=mydatabasename; Convert Zero DateTime=True; Allow User Variables=True" providerName="MySql.Data.MySqlClient"
          );
    try
    {
        myConnection.Open();
    }
    catch (Exception e)
    {
        Console.WriteLine(e.ToString());
    }

}

【讨论】:

  • 我目前有,但我不知道如何连接到不在我机器上的数据库。
  • 我将很快用一个示例连接字符串编辑它
  • 非常感谢!
  • 半年前我在一个AWS项目中使用过。我已经编辑了服务器名称、数据库名称和登录信息。
  • 那是什么语言?
猜你喜欢
  • 2019-08-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-01-20
  • 2015-09-16
  • 1970-01-01
  • 2012-01-13
  • 2012-11-02
相关资源
最近更新 更多