iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >unity连接mysql数据库-最新详细
  • 342
分享到

unity连接mysql数据库-最新详细

mysqldbaunity3dunityvisualstudio 2023-09-01 06:09:38 342人浏览 独家记忆
摘要

文章目录 写在前面MysqlMySQL Installer for WindowsConnector/NETMySQL for Visual Studio Visual Studiouni

文章目录

写在前面


版本兼容问题走了许多弯路,令人非常火大。软件的更新,但是配套和支持往往没有跟上,甚至反而不兼容旧版本,而网上多数博客已经不再适用,故执笔记录,希望可以帮助到你。
在这里插入图片描述
相关安装包已上传网盘。
在这里插入图片描述

链接:https://pan.baidu.com/s/16cNlfe8_XTrW4p3HfgLUNQ
提取码:pdy1

Mysql

安装mysql及相关组件,官网/网盘都可。
https://dev.mysql.com/downloads/
在这里插入图片描述

Mysql Installer for windows


安装Mysql8.0,已安装可跳过此步,相关教程繁多,不再赘述。
https://dev.mysql.com/downloads/installer/
在这里插入图片描述
在这里插入图片描述

Connector/NET


版本兼容问题,这里用的是v6.3.9
https://downloads.mysql.com/archives/c-net/

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述在这里插入图片描述

MySQL for Visual Studio


https://dev.mysql.com/downloads/windows/visualstudio/
在这里插入图片描述在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

插播反爬信息 )博主CSDN地址:https://wzlodq.blog.csdn.net/

Visual Studio


Visual Studio2022暂不支持Mysql!!!
或者Mysql暂不支持Visual Studio2022!!!
直接劝退到2019

视图->服务器资源管理器
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Unity

MySql.Data.dll


unity2020已经内置了System.Data.dll和System.Drawing.dll,只需导入MySql.Data.dll即可。
该文件在前面Connector/NET安装目录下(也已上传网盘),如:
C:\Program Files (x86)\MySQL\MySQL Connector Net 6.3.9\Assemblies\v4.0
在这里插入图片描述

测试脚本


新建两个脚本测试连接:
在这里插入图片描述
SqlAccess.cs

using System;using System.Data;using MySql.Data.MySqlClient;using UnityEngine;using System.Text;public class SqlAccess{public static MySqlConnection dbConnection;public SqlAccess(string host, string port, string username, string pwd, string database){//连接数据库try{string connectionString = string.FORMat("server = {0};port={1};database = {2};user = {3};passWord = {4};", host, port, database, username, pwd);Debug.Log(connectionString);dbConnection = new MySqlConnection(connectionString);dbConnection.Open();Debug.Log("连接成功!");}catch (Exception e){throw new Exception("连接失败!" + e.Message.ToString());}}//关闭连接public void Close(){if (dbConnection != null){dbConnection.Close();dbConnection.Dispose();dbConnection = null;}}//查询public DataSet SelectWhere(string tableName, string[] items, string[] col, string[] operation, string[] values){if (col.Length != operation.Length || operation.Length != values.Length)throw new Exception("col.Length != operation.Length != values.Length");StringBuilder query = new StringBuilder();query.Append("SELECT ");query.Append(items[0]);for (int i = 1; i < items.Length; ++i){query.Append(", ");query.Append(items[i]);}query.Append(" FROM ");query.Append(tableName);query.Append(" WHERE 1=1");for (int i = 0; i < col.Length; ++i){query.Append(" AND ");query.Append(col[i]);query.Append(operation[i]);query.Append("'");query.Append(values[0]);query.Append("' ");}Debug.Log(query.ToString());return ExecuteQuery(query.ToString());}//执行sql语句public static DataSet ExecuteQuery(string sqlString){if (dbConnection.State == ConnectionState.Open){DataSet ds = new DataSet();try{MySqlDataAdapter da = new MySqlDataAdapter(sqlString, dbConnection);da.Fill(ds);}catch (Exception ee){throw new Exception("SQL:" + sqlString + "/n" + ee.Message.ToString());}finally{}return ds;}return null;}}

TestSql.cs

using System.Data;using UnityEngine;public class TestSql : MonoBehaviour{    public string host = "localhost";    public string port = "3306";    public string username = "root";    public string pwd = "123456";    public string database = "demo";    void Start()    {        SqlAccess sql = new SqlAccess(host, port, username, pwd, database);        string[] items = { "name" };//字段名        string[] col = { };        string[] op = { };        string[] val = { };        DataSet ds = sql.SelectWhere("test", items, col, op, val);//替换表名test        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);            }        }    }}

测试结果


在这里插入图片描述
新建GameObject,将TestSql脚本绑定上去,记得修改TestSql密码数据库名字段名等。
在这里插入图片描述
运行测试:
在这里插入图片描述

原创不易,请勿转载本不富裕的访问量雪上加霜
博主首页:https://wzlodq.blog.csdn.net/
来都来了,不评论两句吗👀
如果文章对你有帮助,记得一键三连❤

来源地址:https://blog.csdn.net/qq_45034708/article/details/122618777

您可能感兴趣的文档:

--结束END--

本文标题: unity连接mysql数据库-最新详细

本文链接: https://www.lsjlt.com/news/387608.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作