C#連接MySQL

来源:http://www.cnblogs.com/xiaoguanqiu/archive/2017/12/18/8060269.html
-Advertisement-
Play Games

由於工作需要,從本地Sqlite資料庫轉為MySql資料庫。遇到了一些坑,隨後又埋了。記錄下過程: 一、安裝MySql 首先上官網下載windows版的MySql.解壓。詳情是參考了幾位同鞋的文章: https://www.cnblogs.com/LxyXY/p/7708016.html MySql ...


  由於工作需要,從本地Sqlite資料庫轉為MySql資料庫。遇到了一些坑,隨後又埋了。記錄下過程:

 一、安裝MySql

  首先上官網下載windows版的MySql.解壓。詳情是參考了幾位同鞋的文章:

       https://www.cnblogs.com/LxyXY/p/7708016.html  MySql 5.7.20安裝

       http://blog.csdn.net/cdsn_ttk/article/details/78259927  Mysql5.7.20壓縮版下載和安裝

 二、連接MySql

     2.1在NuGet管理器中下載MySql.Data,選的是6.9.10

      

 

    2.2 由於之前用的是DbConnection等一系列的類,因此只需改下資料庫連接與調整下SQL語句便可以切換資料庫了

    

public static DbConnection CreateConnection()
        {
            if (string.IsNullOrEmpty(DbHelper.dbProviderName))
                dbProviderName = "MySql.Data.MySqlClient";
            DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DbHelper.dbProviderName);
            DbConnection dbconn = dbfactory.CreateConnection();
            dbconn.ConnectionString = DbHelper.dbConnectionString;
            return dbconn;
        }

   2.3 上面所說到的坑就是假如NeGet中選的版本是6.10.5的話。以下語句中DataTable返回的是NULL.

      public DataTable ExecuteDataTable(DbCommand cmd)
        {
            DbProviderFactory dbfactory = DbProviderFactories.GetFactory(DbHelper.dbProviderName);
            DbDataAdapter dbDataAdapter = dbfactory.CreateDataAdapter();
            dbDataAdapter.SelectCommand = cmd;
            DataTable dataTable = new DataTable();
            dbDataAdapter.Fill(dataTable);
            return dataTable;
        }

 經苦苦查找,發現原來是此版本的MySql.Data.Dll的Buy!

over.

 


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 一、cp命令 Linux中的複製命令。 複製文件: 複製目錄: 二、mv命令 mv命令可以作為Linux中的剪切命令,也可以給文件或者文件夾重命名。 剪切文件: 剪切文件夾: 文件重命名: 文件夾重命名: 三、註意 cp文件夾時需要-r參數,mv文件夾時不需要-r參數。 ...
  • 電腦最重要的功能單元之一是Memory。Memory是眾多存儲單元的集合,為了使CPU準確地找到存儲有某個信息的存儲單元,必須為這些單元分配一個相互區別的“身份證號”,這個“身份證號”就是地址編碼。在嵌入式處理器內,集成了多種類型的Memory,通常,我們稱同一類型的Memory為一個Memory ...
  • 一、軟鏈接 相當於windows的快捷方式,當源文件不存在時,軟鏈接失效。 創建軟鏈接: 刪除源文件,軟鏈接失效: 二、硬鏈接 創建硬鏈接: 刪除源文件,硬鏈接仍然可用: 三、總結 鏈接是指向文件名,當指向的文件名字刪除的時候,就找不到源文件了。硬鏈接是指向文件本身,刪除一個文件名字,還是可以找到源 ...
  • 一、yum安裝 1.1 修改yum源 1.2 添加內核參數 預設配置下,在 CentOS 使用 Docker 可能會碰到下麵的這些警告信息: 1.3 添加內核配置參數以啟用這些功能 然後重新載入 sysctl.conf 即可 1.4 建立docker用戶 1.5 鏡像加速 對於使用 systemd  ...
  • 一、pwd命令 顯示整個路徑名: 二、cd命令 切換到其他路徑(相對路徑方式): 切換到其他路徑(絕對路徑方式): 三、根目錄 在linux中,'/'斜杠代表根目錄: 四、家目錄 在linux中,'~'波浪線代表家目錄: 五、上一次所在目錄: 在linux中,'-'橫杠快捷切換到上次所在的路徑: 六 ...
  • 一、ls命令 用於查看目錄下的文件信息。 ls 當前目錄下都有哪些文件: -l選項,顯示當前目錄下文件的詳細信息: -a選項,顯示當前目錄下所有文件,包括隱藏文件(名字以'.'開頭): -al選項,顯示當前目錄下所有文件的詳細信息: -alh,顯示當前目錄下所有文件的詳細信息,文件的大小易讀: 指定 ...
  • 前一篇博客關於SQL Server on Linux的安裝,地址:http://www.cnblogs.com/fishparadise/p/8057650.html,現在測試把Windows平臺下的一個資料庫遷移到Linux平臺下。 1. 環境 Windows: Microsoft SQL Ser ...
  • 1. 原始單據與實體之間的關係 === 可以是一對一、一對多、多對多的關係。在一般情況下,它們是一對一的關係:即一張原始單據對應且只對應一個實體。 在特殊情況下,它們可能是一對多或多對一的關係,即一張原始單證對應多個實體,或多張原始單證對應一個實體。 這裡的實體可以理解為基本表。明確這種對應關係後, ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...