2017-04-10 72 views
-2

如何使用简单的SqlConnection对象连接到远程或本地数据库?我学会了这样做,但我的联系失败了。我从这个页面了解创建连接字符串:如何使用SqlConnection对象在C#中连接数据库?

https://msdn.microsoft.com/en-us/library/system.data.sqlclient.sqlconnection.connectionstring(v=vs.110).aspx

我的代码:

using System.Data.SqlClient; 

namespace SyncApp_BuiltInProviders 
{ 
    public partial class Form1 : Form 
    { 
     private void btnSynchronize_Click(object sender, EventArgs e) 
     { 
      SqlConnection source_conn = new SqlConnection(); 
      source_conn.ConnectionString ="Server=localhost;Database = ptls; UID = root;Password = ODYSSEY99GRANITE;"; 
      source_conn.Open(); 
     } 
    } 
} 
+2

“我的连接失败” - w没有任何关于*如何*它失败的更多信息,我们不能够帮助...(我希望你没有包含你的*真实的* root密码......) –

+1

那个_“UID = root” _让我想想....你安装了什么样的数据库? – Steve

回答

0

如果您在使用SQL数据库,在我看来,你没有设置用户名和密码。如果你还没有设置用户名和密码,那么试试这个。

private void btnSynchronize_Click(object sender, EventArgs e) 

     { 
      SqlConnection db_connect= new SqlConnection(); 

      db_connect.ConnectionString ="Server=[your local pc connection name, it is not local host.];Database=[database_name];Trusted_Connection=true"; 

      db_connect.Open(); 
     } 
+0

不,我正在使用MySql数据库 –

+0

@ M.Dagiya - 如果您使用的是MySql,那么您将无法使用SqlConnection或System.Data.SqlClient,因为这是Sql Server特有的。我相信你应该使用'MySqlConnection' –

3

由于您在另一个答案中的评论很明显,您正在使用错误的类。 SqlConnection是专门连接到Sql Server/Sql Server Express/LocalDb的类。它不能对付MySql

如果您使用MySql,那么您需要从here下载并安装MySql Connector for NET。

之后,你需要引用MySql.Data.dll并添加

using MySql.Data.MySqlClient; 

到与数据库交互的所有源文件。

最后,所有用于数据库的类都应该是MySql NET Connector提供的类。

他们与MySQL .....(的MySqlConnection的MySqlCommand了MySqlDataReader等)

0

前缀如果你使用MySQL然后

private void btnSynchronize_Click(object sender, EventArgs e) 

     { 

//Create a MySQL connection string. 
string connectionString="Server=localhost;Database[database_name];Uid=root;Password =your password; "; 

MySqlConnection db_connect= new MySqlConnection(connectionString); 

db_connect.Open(); 
     } 

最后使用下面的名称空间

using MySql.Data.MySqlClient;