Unity 操作 Mysql 模板代码


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

public class DBMgr {
    private static DBMgr instance = null;

    public static DBMgr Instance {
        get {
            if (instance == null) {
                instance = new DBMgr();
            }
            return instance;
        }
    }

    private MySqlConnection conn;

    public void Init() {
        conn = new MySqlConnection("server=127.0.0.1;User Id = root;password=;Database=wordgame;Charset = utf8");
        conn.Open();
        QueryPlayerData("123", "123");
    }

    public void QueryPlayerData(string act, string pwd) {
        bool isNew = true;
        try {
            MySqlDataReader reader = null;
            MySqlCommand cmd = new MySqlCommand("select * from tb_account where act = @act", conn);
            cmd.Parameters.AddWithValue("act", act);
            reader = cmd.ExecuteReader();
            if (reader.Read()) {
                isNew = false;
                string _pwd = reader.GetString("pwd");
                if (_pwd.Equals(pwd)) {
                    Debug.Log($"登录成功!");
                }
            }
        } catch (Exception e) {
            conn.Close();
        }
    }

    private int InsertNewAcctData(string act, string pwd) {
        int id = -1;
        try {
            MySqlCommand cmd = new MySqlCommand(@"insert into tb_account set act=@act", conn);
            cmd.Parameters.AddWithValue("act", act);

            
            cmd.ExecuteNonQuery();
            id = (int) cmd.LastInsertedId;
        } catch (Exception e) {
            conn.Close();
        }
        return id;
    }

    public bool UpdatePlayerData(int id) {
        try {
            MySqlCommand cmd = new MySqlCommand(@"update tb_account set name=@name where id =@id", conn);
            cmd.Parameters.AddWithValue("id", id);
            cmd.Parameters.AddWithValue("name", "name");

            cmd.ExecuteNonQuery();
        } catch (Exception e) {
            conn.Close();
            return false;
        }
        return true;
    }
}

原文地址:https://www.cnblogs.com/unitysir/p/13848177.html