系統环境:
- Windows 10(x64)(version 1909)
- Unity3D (version 2018.3.0f2)
- Microsoft Visual Studio Community 2017 (version 15.9.4)
操作步驟:
准備一個本地/綫上Mysql數據庫
Y Cheung 的數據庫設置如下:
1DATABASE Host: 127.0.0.1
2DATABASE Port: 3306
3DATABASE Name: my_db
4DATABASE Username: root
5DATABASE Password: 7vWe4Z@ZT2N#
下載並安裝Mysql Connector/ODBC(可選)
下載並安裝Mysql Connector/ODBC,如果安裝過程中遇到錯誤(Error 1918),前往官網下載並安裝最新的適合你系統的Visual C++ Redistributable。安裝完成后可以在C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Administrative Tools\ODBC 数据源(64 位)
的驅動程序中看到安裝好的驅動
下載並安裝Mysql Connector/NET
下載並安裝Mysql Connector/NET ,安裝完成后可以在C:\Program Files (x86)\MySQL\MySQL Connector Net 8.0.19\Assemblies\v4.5.2
看到以下文件
導入DLL文件
在Unity3D Assets中導入上一步驟中 C:\Program Files (x86)\MySQL\MySQL Connector Net 8.0.19\Assemblies\v4.5.2
文件夾裏的以下文件
1MySql.Data.dll
2BouncyCastle.Crypto.dll
3Google.Protobuf.dll
4Renci.SshNet.dll
5SshNet.Security.Cryptography.dll
6Ubiety.Dns.Core.dll
編輯scripts
開始你對數據庫操作的代碼,一個簡單的例子
1using System.Collections;
2using System.Collections.Generic;
3using UnityEngine;
4using MySql.Data.MySqlClient;
5
6public class MysqlAccess
7{
8 public static MySqlConnection mySqlConnection;
9 static string host = "127.0.0.1";
10 static string user = "root";
11 static string pwd = "7vWe4Z@ZT2N";
12 static string db = "my_db";
13 static string port = "3306";
14
15 public void connectDB()
16 {
17 Open();
18 }
19 public static void Open()
20 {
21 try
22 {
23 string connectionString = string.Format("Server = {0};port={4};Database = {1}; User ID = {2}; Password = {3};", host, db, user, pwd, port);
24 mySqlConnection = new MySqlConnection();
25 mySqlConnection.Open();
26 }catch(System.Exception e)
27 {
28 throw new System.Exception(""+e.Message.ToString());
29 }
30 }
31
32 public void Close()
33 {
34 if (mySqlConnection != null)
35 {
36 mySqlConnection.Close();
37 mySqlConnection.Dispose();
38 mySqlConnection = null;
39 }
40 }
41}
⚠ 本文係幫助朋友解決Unity3D對接Mysql的問題,但Y Cheung不建議Unity3D在生產環境直接對數據庫進行操作,這是很危險的行爲。