您的位置:首页 > 移动开发 > Unity3D

unity3d 免费好用的数据库处理框架 数据库直连框架

2015-09-18 18:44 239 查看

一、概述

前不久有一个哥们做PC游戏开发的.使用到Unity3d,

正好找到我.

我给他提供了Unity3d如何Moon.Orm来智能化编程的方式.

我们先看看怎么更加便捷sqlite.

/article/4815885.html

using System;
using Moon_Sqlite;
using Moon.Orm;
using Moon.Orm.Util;
namespace testsome
{
class Program
{
public static void Main(string[] args)
{
//添加数据
using (var db=new Sqlite("sqlite的链接字符串")) {
/*清空数据表
db.Remove<ScoreSet>();
db.Remove<StudentSet>();
db.Remove<ClassSet>();
*/
//添加数据
Class cl=new Class();
cl.ClassName="班级"+DateTime.Now.ToString();
cl.ClassLevel=1;
db.Add(cl);
Console.WriteLine("添加[班级]成功,ID={0}",cl.ID);

Student stu=new Student();
stu.Age=12;
stu.BirthDay=DateTime.Now;
stu.Class_ID=cl.ID;
stu.Name="张三"+DateTime.Now;
stu.Sex=true;
db.Add(stu);
Console.WriteLine("添加[学生]成功,ID={0}",stu.ID);

Score sco=new Score();
sco.Score_=98;
sco.Student_ID=stu.ID;
db.Add(sco);
Console.WriteLine("添加[分数]成功,ID={0}",stu.ID);

//跟新数据
Score update=new Score();
update.Score_=100;
update.WhereExpression=ScoreSet.ID.Equal(sco.ID);
db.Update(update);
}
//查询数据
using (var db=Db.CreateDefaultDb()) {
//连接查询
var mqlJoin=ScoreSet.SelectAll()
.InnerJoin(StudentSet.Select(StudentSet.Name))
.InnerJoin(ClassSet.Select(ClassSet.ID.AS("ClassID"),ClassSet.ClassName))
.ON(ScoreSet.Student_ID.Equal(StudentSet.ID)
.And(StudentSet.Class_ID.Equal(ClassSet.ID) )
);
//查看当前sql
var sql=mqlJoin.ToDebugSQL();
var list=db.GetDictionaryList(mqlJoin);
//展示数据
list.ShowInConsole();

//让我们无需实体类
string sql2=mqlJoin.ToParametersSQL();
dynamic dlist=db.GetDynamicList(sql2,"自定义类名");
foreach (dynamic entity in dlist) {
Console.WriteLine(entity.ID+" "+entity.Score+" "+entity.Student_ID+" "+entity.Name+" "+entity.ClassID+" "+entity.ClassName);
}
//获取实体集
var entityList=db.GetEntities<Score>(ScoreSet.SelectAll().Where(ScoreSet.ID.BiggerThan(0)));

}
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}


二、Unity3D中如何使用.

1.下载moon.orm

下载地址:

http://lko2o.com/moon/article/3
2.引用moon.orm.dll

3.放置程序库到如下位置

将moon.orm.dll ,System.Data.SQLite.dll ,SQLite.Interop.dll sqlite数据库文件放入unity3d编辑器exe所在位置;

这时候编辑器中就可以直接看到查询结果了.

注意:以及在最终的目标程序那里同样放一份.(生成之后再放)

4.使用代码生成器

此链接介绍了如何使用代码生成器: /article/4815885.html

5.开始编码

using(var db=new Sqlite("sqlite的链接字符串")){

var mql=UserSet.Select(UserSet.Name).Where(UserSet.ID.Equal(9));

var name=db.GetScale(mql).ToString();

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: