Unity连接数据库

前言

Unity连接数据库方法,使用数据库管理工具为Navicat,这里分别写了连接SQL数据库,连接本地化SQLite数据库的方法

创建数据库内容

我这里分别创建了两个数据库,数据库名和表名以及密码可以根据自己需要修改

创建SQL数据库内容

创建SQLite数据库内容

SQLite数据库文件保存在本地StreamingAssets文件夹内

连接SQL数据库方法

  /// <summary>
    /// 连接SQL方法
    /// </summary>
    void GetUserSQL()
    {
        connection = new MySqlConnection(connectionString);
        try
        {
            connection.Open();
            string query = "SELECT*FROM data1";//检索该表
            var commmand = new MySqlCommand(query,connection);
            MySqlDataReader reader = commmand.ExecuteReader();
            while (reader.Read())
            {
                int columID = reader.GetInt32("uID");
                string columName = reader.GetString("uName");
                string columPwd = reader.GetString("uPwd");

                userData.Add(columName, columPwd);
                Debug.Log($"读取到内容,ID:{columID};姓名:{columName};密码:{columPwd}");
            }
            reader.Close();//读取完毕释放资源
        }
        catch(MySqlException ex)
        {
            Debug.LogError("连接失败: " + ex.Message);
        }
        finally
        {
            connection.Close();//关闭数据库连接,释放资源
        }
    }

连接SQLite数据库方法

  void GetUserSQLite()
    {
        SqliteConnection connection = new SqliteConnection(connectionString2);
        try
        {
            connection.Open();
            string query = "SELECT*FROM user1";
            SqliteCommand command = new SqliteCommand(query, connection);
            SqliteDataReader reader = command.ExecuteReader();
            while (reader.Read())
            {
                int columID = reader.GetInt32(0);
                string columName = reader.GetString(1);
                string columPwd = reader.GetString(2);

                Debug.Log($"读取到内容,ID:{columID};姓名:{columName};密码:{columPwd}");
            }
            reader.Close();
        }
        catch (MySqlException ex)
        {
            Debug.LogError("连接失败: " + ex.Message);
        }
        finally
        {
            connection.Close();
        }

    }

声明所需对象

    public Dictionary<string, string> userData = new Dictionary<string, string>();//存储获取到的用户信息

    MySqlConnection connection;//创建数据库连接对象
    private string connectionString;//SQL连接信息
    private string connectionString2;//本地化SQLite地址

    private void Awake()
    {
        connectionString = "server=localhost;user id=root;password=登录密码;database=user;charset=utf8;";
        connectionString2 = "URI=file:" + Application.streamingAssetsPath + "/test.db";
    }

附:读取MySQL和SQLite库文件稍后会上传到资源,大家网上找不到的话可以直接下载使用。

  • 11
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

立刀人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值