Unity连接MySQL数据库超详细版!!!(MySQL安装、Navicat安装、Unity连接MySQL测试)

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.net/download/chengbaola/12897927.

(2)官网下载

官网下载地址为:https://dev.mysql.com/downloads/mysql/.

进入界面后,选择自己的操作系统,并点第一个Download;

在这里插入图片描述
页面跳转之后,直接点击No thanks,just start my download,即可下载成功。
在这里插入图片描述
同理,在https://dev.mysql.com/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.com/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.net/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.net/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();
    }
}

将脚本挂载到摄像机上,出现以下结果,则为成功。

在这里插入图片描述

  • 48
    点赞
  • 244
    收藏
    觉得还不错? 一键收藏
  • 28
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 28
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值