前言
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库文件稍后会上传到资源,大家网上找不到的话可以直接下载使用。