1.Navicat准备 test 数据库,并在test数据库下创建 user 数据表,预先插入测试数据。

2.启动 Unity Hub 新建一个项目,然后在Unity编辑器的 Project视图 中,右击新建一个 Plugins 文件夹将连接 MySQL的驱动包 导入(附加驱动包链接),之后Unity会自动引用它们。

3.在 Hierarchy视图 中点击 Main Camera 对象,然后在右边的 Inspector视图 中点击 Add Component,添加脚本组件,名称如下。

4.AccessMySQL脚本组件连接数据库和执行SQL语句代码如下

...//your code
    //MySQL 连接对象
    public static MySqlConnection dbConnection;
    //连接或关闭 MySQL数据库
    public void ConnectMySQL(string connectionStr,bool isOpen){
        if(isOpen){
            try{
                dbConnection = new MySqlConnection(connectionStr);
                dbConnection.Open();
                Debug.Log("连接MySQL数据库成功");
            }catch(System.Exception e){
                throw new System.Exception("连接MySQL数据库失败:"+e.Message.ToString());
            }
        }else{
            if(dbConnection != null){
                dbConnection.Close();
                dbConnection.Dispose();
                dbConnection = null;
            }
        }
    }

    //SQL语句执行方法
    public  DataSet ExecuteQuery(string sqlStr,MySqlConnection ConnectionDB){
        if(dbConnection.State == ConnectionState.Open){
            //表的集合
            DataSet dataSet = new DataSet();
            try{
                MySqlDataAdapter data = new MySqlDataAdapter(sqlStr,ConnectionDB);
                data.Fill(dataSet);
            }catch(System.Exception e){
                throw new System.Exception("SQL:"+sqlStr+"/n"+e.Message.ToString());
            }
            return dataSet;
        }
        return null;
    }

    // Start is called before the first frame update
    void Start()
    {
        string connectionStr = "Server = 127.0.0.1;port=3306;DataBase=test;UID=root;Pwd=1008";
        ConnectMySQL(connectionStr,true);

        string sqlQuery = "select * from user";
        DataSet ds = ExecuteQuery(sqlQuery,dbConnection);
        // Debug.Log("检索到:"+ds.Tables[0].Rows.Count+" 条数据");
        for(int i = 0;i<ds.Tables[0].Rows.Count;i++){
           Debug.Log("姓名:"+ ds.Tables[0].Rows[i]["name"] + " 年龄:"+ds.Tables[0].Rows[i]["age"]);
        }
    }
...//your code

5.Unity编辑器的控制台显示执行效果,代码正常,运行成功!!!

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐