Unity连接MySQL数据库超详细版!!!(MySQL安装、Navicat安装、Unity连接MySQL测试)
最近Unity项目所用数据较大,因此需要用到MySQL数据库,笔者配置环境也费了一番功夫,本文分为三个部分:一、MySQL的安装;二、Navicat的安装;三、Unity连接MySQL测试。
本人电脑WIN7,在此之前,介绍一下各软件版本:Unity 2018.3.5f1(64-bit)、Visual Studio 2017社区版、mysql-8.0.21-winx64、mysql-8.0.21-winx64、navicat121_premium_cs_x64。
一、MySQL安装
1.安装包下载
此处提供两种下载方式:
(1)csdn下载
为了节约时间,在此提供csdn下载方式:https://download.csdn/download/chengbaola/12897927.
(2)官网下载
官网下载地址为:https://dev.mysql/downloads/mysql/.
进入界面后,选择自己的操作系统,并点第一个Download;
页面跳转之后,直接点击No thanks,just start my download,即可下载成功。
同理,在https://dev.mysql/downloads.下载以下三个安装包:
2.MySQL安装
(1)解压安装包
在C盘新建文件夹JAVA_Environment\MySQL,将下载的压缩包mysql-8.0.21-win64.zip解压到这个文件夹:
(2)添加环境变量
右击计算机—属性—高级系统设置—高级—环境变量,在系统变量(s)中选择PATH,点击编辑,添加刚刚MySQL安装目录的bin文件夹地址,记得添加之前前一个要有分号。我的地址为:C:\JAVA_Environment\MySQL\mysql-8.0.21\bin
(3)新建my.ini文件
新建txt文件,添加以下内容:
[mysqld]
basedir=C:\JAVA_Environment\MySQL\mysql-8.0.21
datadir=C:\JAVA_Environment\MySQL\mysql-8.0.21\data
port=3306
basedir与datadir为自己的地址,将txt文件命名为my,并把后缀改为ini,将此文件放在C:\JAVA_Environment\MySQL\mysql-8.0.21。
(4)安装mysql
1)WIN+R,启动管理员,模式下的cmd,将路径切换至MySQL安装目录的文件夹,我的路径为:cd C:\JAVA_Environment\MySQL\mysql-8.0.21,转到此目录下后,输入nysqld -install(注意-之前有一个空格),回车,出现Service successfully installed,则为成功,这步为安装MySQL服务;
2)接着输入mysqld --initialize-insecure --user=mysql,回车,这一步不会有什么提示,这句表示初始化数据文件;
3)紧接着输入:net start mysql,则会出现MySQL 服务正在启动… MySQL服务已经启动成功。,这步为启动mysql;
4)紧接上步,输入mysql -u root -p,出现Enter password:,直接回车就好,会出现MySQL的管理界面,如下:
5)输入ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的密码’; 注意这句话结尾一定有分号,这句话是设置密码,出现**Query OK,0 rows affected <0.10 sec>**即为成功。
6)依次输入以下命令,即可安装成功:
eixt
net stop mysql
set start mysql
7)将下载的其他三个安装文件,按照默认路径安装即可:
二、Navicat12安装
1.安装包下载
下载地址:https://pan.baidu/s/1olvwk_ZFZlnaJHTNoS_OYA
提取码:mv3o
2.Navicat12安装
(1)解压安装包
下载好安装包解压如下:
(2)navicat安装
首先双击navicat121_premium_cs_x64.exe进行navicat12的安装,点击下一步;
我同意,下一步;
默认路径或者更改路径,这里选择默认路径;
下一步;
勾选Create a desktop icon,下一步;
点击安装,开始安装。
(3)navicat破解
破解参考如下博客,写的很清晰:https://blog.csdn/MrPrefect/article/details/93593848.
三、Unity连接MySQL测试
1.dll动态链接库准备
经过查阅资料,Unity连接MySQL数据库需要以下几个dll:
有些博客也说需要System.Data.dll与System.Drawing.dll,但是我测试的时候用这两个会报错。
除Mysql.Data.dll,其他dll都在unity安装目录\Editor\Data\Mono\lib\mono\2.0下。
Mysql.Data.dll下载地址:https://download.csdn/download/chengbaola/12897985.
2.项目准备
新建名为MySQLUnityTest的Unity项目,在Assets下新建Plugins文件夹,把上述4个dll文件拷贝到此文件夹下,并新建C#脚本文件。
3.数据表准备
在Nevicat中新建连接,连接名为Mysql,并测试是否成功;
打开连接后,新建数据库,数据库名为scores,字符集为utf8;
打开数据库后,在scores数据库中新建数据表studentScores,新建三个字段,id(主键),name,score,并输入三条数据。
表字段:
表内容:
4.代码测试
在之前新建的C#脚本文件里面,写入以下代码:
using MySql.Data.MySqlClient;
using System;
using System.Collections;
using System.Collections.Generic;
using System.Data;
using UnityEngine;
public class NewBehaviourScript : MonoBehaviour
{
void Start()
{
//建立连接语句
//charset=utf8这句要写,不然可能会报错
string constr = "server=localhost;User Id=root;password=123456;Database=scores;charset=utf8";
//建立连接
MySqlConnection mycon = new MySqlConnection(constr);
//打开连接
mycon.Open();
//插入数据
MySqlCommand mycmd = new MySqlCommand("insert into studentscores(id,name,score) values (3,'lisi',100)", mycon);
if (mycmd.ExecuteNonQuery() > 0)
{
print("Insert success!");
}
//查询数据
string selstr = "select * from studentscores";
MySqlCommand myselect = new MySqlCommand(selstr, mycon);
DataSet ds = new DataSet();
try
{
MySqlDataAdapter da = new MySqlDataAdapter(selstr, mycon);
da.Fill(ds);
print("Query success!");
print(ds.Tables[0].Rows[0][0]);
}
catch (Exception e)
{
throw new Exception("SQL:" + selstr + "\n" + e.Message.ToString());
}
//关闭连接
mycon.Close();
}
}
将脚本挂载到摄像机上,出现以下结果,则为成功。
更多推荐
Unity连接MySQL数据库超详细版!!!(MySQL安装、Navicat安装、Unity连接MySQL测试)
发布评论