【问题标题】:Retrieve data from database using C#使用 C# 从数据库中检索数据
【发布时间】:2016-01-29 04:08:00
【问题描述】:

我正在尝试从 Microsoft Visual Studio 2013 中的数据库中检索数据。无论我是否已经能够连接到数据库,我都完全迷失了,而且我不确定如何使用 c# 检索数据,因为我对 c# 完全陌生。 我也不确定应该在 connectDB() 方法之前或之后放置静态 void main 方法语句。

private void connectDB()
{
   // server = "172.20.129.159";
    database = "eyetracker";
     server = "localhost";
    // uid = "ogamaaccess";
    // password = "ogama";
    uid = "root";
    password = "root";
    string connectionString;
    connectionString = "SERVER=" + server + ";" + "DATABASE=" + database + ";" + "UID=" + uid + ";" + "PASSWORD=" + password + ";";
    c = new MySqlConnection(connectionString);
    Console.WriteLine("Connected to database");


}

private bool OpenConnection()
{
    try
    {
        c.Open();
        Console.WriteLine("Connection Opened.");
        return true;

    }
    catch (MySqlException)
    { 
         return false;
    }

【问题讨论】:

  • 你写过代码吗?
  • 有数以百万计的教程、示例等可用。只需将问题标题中的前六个单词输入谷歌搜索字符串 - 你就会得到它。
  • 而且您还应该知道要使用哪种技术。使用数据库和处理数据访问层有很多方法。
  • “我也不确定应该在 connectDB() 方法之前或之后放置静态 void main 方法语句。”方法顺序对编译器来说并不重要,你可以把它放在任何地方。

标签: c# mysql-workbench data-retrieval


【解决方案1】:

您需要安装MySql NET Connector,它提供了适当的位以连接到 MySQL 数据库。

安装提供程序后,您需要添加对 MySql.Data.Dll 的引用并将适当的 using 语句添加到您的代码中

using MySql.Data.MySqlClient;

您还需要更改可以在here. 中找到的连接字符串

连接代码应该类似于以下内容:

private void Login() // login method
{
    string connectString = @"uid=<UserID>;password=<Password>;
                           server=<IPorDomainNameOfDatabase>;
                           database=<DatabaseNameOnServer>;";;


    using(MySqlConnection cnn = new MySqlConnection(connectString))
    {
        try
        {
            cnn.Open();
        }
        catch (Exception e)
        {
           .....
        }
    }
}

完整代码可能如下所示(应根据您要检索的数据编辑命令):

            MySqlConnection connect  = new MySqlConnection(connectString);
            MySqlCommand command = connect.CreateCommand();
            command.CommandText  = "Select <VALUE> from <TABLE> order by <ID> desc limit <0,1>;"; 
            //Command to get query needed value from DataBase
            connect.Open();
            MySqlDataReader reader = command.ExecuteReader();

            if (reader.Read())
            {
                var result = reader.GetString(0);
            }

注意:我强烈建议您将connect.Open(); 放入 TryCatch 语句中,因为有很多事情可能会出错并且您的程序会崩溃。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-03-07
    • 1970-01-01
    • 2019-11-19
    相关资源
    最近更新 更多