IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 游戏开发 -> Unity2018连接MySQL数据库(总结版) -> 正文阅读

[游戏开发]Unity2018连接MySQL数据库(总结版)

本文章涉及的编译器版本: Unity2018.4.18f1 + mysql-8.0.28 + Visual Studio2019

1. Visual Studio中下载MySql.Data插件

首先你需要有Visual Studio,在Visual Studio中下载一个插件MySql.Data

在这里插入图片描述
浏览中搜索MySql.Data,然后下载该插件。
在这里插入图片描述

2. MySql官网下载插件

你需要有MySql,然后到官网下载以下三个东西

  • MySQL Connector Net(下载低一点的版本,我这边下载的版本是6.39
  • Connector ODBC 8.0
  • MySQL for VIsaul Studio
    在这里插入图片描述

在这里插入图片描述
下载完之后傻瓜式的安装即可。

3. 尝试Visual Studio连接Mysql

以上工作做完之后,尝试Visual Studio连接Mysql。打开Visual Studio,打开服务器资源管理器
在这里插入图片描述
右键数据连接,选择添加连接
在这里插入图片描述
选择MySQL Database,然后输入账号密码,选择一个数据库进行测试连接,成功就可以继续下一步。
在这里插入图片描述
在这里插入图片描述

4. 在Unity中导入dll文件

需要在Connector Net中找到Assembilies里导入MySql.Data.dll
在这里插入图片描述

如果Unity版本是18及以后的,只需要在Assets中添加MySql.Data.dll即可,因为System.Data.dll和System.Drawing.dll两个文件已经被集成到内置文件中了,重复添加会报错误。

(因为我这边版本是18的,所以就不添加另外两个dll)

添加完之后在Visual Studio中引用里可以找到对应的引用。
在这里插入图片描述

5. 编写SQL脚本进行测试

SqlAccess.cs

using System;
using System.Data;
using MySql.Data.MySqlClient;
using UnityEngine;
using System.Text;

public class SqlAccess
{
	public static MySqlConnection dbConnection;
	static string host = "localhost";
	static string port = "3306";
	static string username = "root";
	static string pwd = "123456";
	static string database = "dudugo";

	public SqlAccess()
	{
		OpenSql();
	}

	/// <summary>
	/// 连接数据库
	/// </summary>
	public static void OpenSql()
	{
		try
		{
			string connectionString = string.Format("server = {0};port={1};user = {2};password = {3};database = {4};", host, port, username, pwd, database);
			Debug.Log(connectionString);
			dbConnection = new MySqlConnection(connectionString);
			Debug.Log("准备建立连接...");
			dbConnection.Open();
			Debug.Log("建立连接成功!");
		}
		catch (Exception e)
		{
			throw new Exception("服务器连接失败,请重新检查是否打开MySql服务。" + e.Message.ToString());
		}
	}

	/// <summary>
	/// 关闭数据库连接
	/// </summary>
	public void Close()
	{
		if (dbConnection != null)
		{
			dbConnection.Close();
			dbConnection.Dispose();
			dbConnection = null;
		}
	}

	public DataSet SelectAll(string tableName)
	{

		StringBuilder query = new StringBuilder();
		query.Append("SELECT * FROM");
		query.Append(tableName);

		Debug.Log(query.ToString());
		return ExecuteQuery(query.ToString());
	}
}

TestSql.cs

using System.Data;
using UnityEngine;

public class TestSql : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        SqlAccess sql = new SqlAccess();
        DataSet ds = sql.SelectAll("`rank`");

        if (ds != null)
        {
            DataTable table = ds.Tables[0];
            foreach (DataRow row in table.Rows)
            {
                string str = "";
                foreach (DataColumn column in table.Columns)
                    str += row[column] + " ";
                Debug.Log(str);
            }
        }
    }
}

TestSql.cs的脚本随便挂给一个游戏对象,运行后可以看到结果。
在这里插入图片描述

6. 打包后无法连接数据库

项目打包后,会出现无法连接数据库的问题,这边也有对应的解决方法。

  • 首先,在Unity中导入以下四个dll文件

对应Unity的安装目录:Unity\Editor\Data\MonoBleedingEdge\lib\mono\unityjit

在这里插入图片描述

  • 在Unity中去修改Api Compatibility Level为.NET 4.x

路径:Project Setting->player->othersetting->Configuration->Api Compatibility Level
在这里插入图片描述

参考链接1:Unity2020连接MySQL数据库
参考链接2:Unity2018连接MySQL数据库
参考链接3:关于Unity在编辑器中能连接数据库,但是打包后不能连接数据库的解决方案

  游戏开发 最新文章
6、英飞凌-AURIX-TC3XX: PWM实验之使用 GT
泛型自动装箱
CubeMax添加Rtthread操作系统 组件STM32F10
python多线程编程:如何优雅地关闭线程
数据类型隐式转换导致的阻塞
WebAPi实现多文件上传,并附带参数
from origin ‘null‘ has been blocked by
UE4 蓝图调用C++函数(附带项目工程)
Unity学习笔记(一)结构体的简单理解与应用
【Memory As a Programming Concept in C a
上一篇文章      下一篇文章      查看所有文章
加:2022-05-05 11:52:21  更:2022-05-05 11:56:05 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 11:31:49-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码