最近在公司接到任務,需要獲取第三方MySQL數據庫中的數據,使用的是C# ,因爲之前做的是JAVA,對於C#還不是很熟悉,所以這裏就記錄一下:
首先說說整個流程:
一,環境準備
1下載對應的插件
右擊項目,選擇“管理NuGet…"即可出現該界面
輸入mysql進行查找
點擊mysqlDate下載即可
二,連接
1設置連接參數-字符串str
2調用MySqlConnection(str)方法,與數據庫進行連接
3打開連接.Open();
4編寫對應的SQL語句,並執行MySqlCommand()方法,進行數據操作
5讀取數據庫的返回數據MySqlDateReader()
6關閉和銷燬從而釋放數據庫連接數資源
這裏先貼一個初學者的代碼:
經調試,是可以連接成功並獲取到數據
(後期會更新,使用C#讀取配置文件,取得第三方數據庫並存入到本地sql server數據庫)
using System;
using System.Collections.Generic;
using Microsoft.VisualStudio.TestTools.UnitTesting;
using MySql.Data.MySqlClient;
namespace UnitTestProject1
{
[TestClass]
public class UnitTest1
{
[TestMethod]
public void TestMethod1()
{
string server = "ip";
string userid = "用戶名";
string password = "密碼";
string database = "數據庫名";
string info = "";
string str = string.Format("Server={0};User ID={1};Password={2};Database={3};", server, userid, password, database);
//建立連接
try
{
MySqlConnection myCon = new MySqlConnection(str);
//打開連接
myCon.Open();
//執行sql命令
MySqlCommand myCmd = new MySqlCommand("select User,Host FROM mysql.user", myCon);
MySqlDataReader reader = myCmd.ExecuteReader();
List<userData> response = new List<userData>();
while (reader.Read())
{
for (int i = 0; i < reader.FieldCount; i=i+2)
{
userData ud = new userData();
info = "查詢到了數據";
ud.user = reader[i].ToString();
ud.host = reader[i + 1].ToString();
response.Add(ud);
}
}
myCmd.ExecuteNonQuery();
myCmd.Dispose();
myCon.Close();
myCon.Dispose();
}
catch
{
info = "發生異常";
}
}
}
}
public class userData
{
public userData()
{
host = "";
user = "";
}
public string host;
public string user;
}