一、概述

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

正好找到我.

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

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

http://www.cnblogs.com/humble/p/4593133.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=;
db.Add(cl);
Console.WriteLine("添加[班级]成功,ID={0}",cl.ID); Student stu=new Student();
stu.Age=;
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_=;
sco.Student_ID=stu.ID;
db.Add(sco);
Console.WriteLine("添加[分数]成功,ID={0}",stu.ID); //跟新数据
Score update=new Score();
update.Score_=;
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())); }
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.使用代码生成器

此链接介绍了如何使用代码生成器: http://www.cnblogs.com/humble/p/4593133.html

5.开始编码

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

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

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

}

unity3d 免费好用的数据库处理框架 数据库直连框架的更多相关文章

  1. 数据库历险记(三) | 缓存框架的连环炮 数据库历险记(二) | Redis 和 Mecached 到底哪个好? 数据库历险记(一) | MySQL这么好,为什么还有人用Oracle? 面对海量请求,缓存设计还应该考虑哪些问题?

    数据库历险记(三) | 缓存框架的连环炮   文章首发于微信公众号「陈树义」,专注于 Java 技术分享的社区.点击链接扫描二维码,与500位小伙伴一起共同进步.微信公众号二维码 http://p3n ...

  2. Laravel框架数据库CURD操作、连贯操作使用方法

    Laravel框架数据库CURD操作.连贯如何来操作了这个操作性是非常的方便简单了我们在这里来为各位介绍一篇相关的教程,具体的细节步骤如下文介绍.   Laravel是一套简洁.优雅的PHP Web开 ...

  3. 您的项目引用了最新实体框架;但是,找不到数据链接所需的与版本兼容的实体框架数据库 EF6使用Mysql的技巧

    转载至: http://www.cnblogs.com/Imaigne/p/4153397.html 您的项目引用了最新实体框架:但是,找不到数据链接所需的与版本兼容的实体框架数据库 EF6使用Mys ...

  4. Yii2.0高级框架数据库增删改查的一些操作(转)

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  5. Laravel框架数据库CURD操作、连贯操作

    这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 $users = DB::t ...

  6. Yii2.0高级框架数据库增删改查的一些操作

    yii2.0框架是PHP开发的一个比较高效率的框架,集合了作者的大量心血,下面通过用户为例给大家详解yii2.0高级框架数据库增删改查的一些操作 --------------------------- ...

  7. activiti5.13 框架 数据库设计说明书

    转载自:http://www.cnblogs.com/llzgzljl/p/3356108.html activiti5.13 框架 数据库设计说明书 1.结构设计 1.1.    逻辑结构设计 Ac ...

  8. Laravel框架数据库CURD操作、连贯操作总结

    这篇文章主要介绍了Laravel框架数据库CURD操作.连贯操作.链式操作总结,本文包含大量数据库操作常用方法,需要的朋友可以参考下 一.Selects 检索表中的所有行 复制代码代码如下: $use ...

  9. “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象

    目录: “Zhuang.Data”轻型数据库访问框架(一)开篇介绍 “Zhuang.Data”轻型数据库访问框架(二)框架的入口DbAccessor对象 先来看一段代码 DbAccessor dba ...

  10. php框架中的phalcon框架的安装,及初步认识,从表单提交简单的数据到数据库中

    php框架中的phalcon框架的安装,及初步认识,从表单提交简单的数据到数据库中 1.phalcon框架的安装: phalcon框架在windows本地安装可以利用wamp软件,安装之后可以查看对应 ...

随机推荐

  1. CENTOS 6.5 平台离线安装 Apache2.4

    一.下载Apache 2.4 http://httpd.apache.org/download.cgi http://mirrors.cnnic.cn/apache//httpd/httpd-2.4. ...

  2. 9、 Struts2验证(声明式验证、自定义验证器)

    1. 什么是Struts2 验证器 一个健壮的 web 应用程序必须确保用户输入是合法.有效的. Struts2 的输入验证 基于 XWork Validation Framework 的声明式验证: ...

  3. ls: 无法访问/usr/sbin/smartctl: 没有那个文件或目录

    环境:RHEL6.5 + Oracle 11.2.0.4 RAC 在安装RAC时,检查时缺少包 cvuqdisk-1.0.9-1,oracle提供脚本修复安装. 但在执行时报错: [root@orad ...

  4. 要想提高PHP的编程效率,你必须知道的要点

    1.当操作字符串并需要检验其长度是否满足某种要求时,你想当然地会使用strlen()函数.此函数执行起来相当快,因为它不做任何计算,只返回在zval 结构(C的内置数据结构,用于存储PHP变量)中存储 ...

  5. Kooboo CMS技术文档之四:Kooboo CMS的站点组成部分

    Kooboo CMS本着功能独立分离的原则,将站点分为三部分组成:用户管理,站点管理和内容数据库管理.各个功能之间既可独立使用,也可以容易组成在一起形成一个完整的系统. 用户管理 管理整个系统内的用户 ...

  6. WCF基础

    初入职场,开始接触C#,开始接触WCF,那么从头开始学习吧,边学边补充. SOA Service-Oriented Architecture,面向服务架构,粗粒度.开放式.松耦合的服务结构,将应用程序 ...

  7. Node.js学习笔记——Node.js开发Web后台服务

    一.简介 Node.js 是一个基于Google Chrome V8 引擎的 JavaScript 运行环境.Node.js 使用了一个事件驱动.非阻塞式 I/O 的模型,使其轻量又高效.Node.j ...

  8. Activity之概览屏幕(Overview Screen)

    概览屏幕 概览屏幕(也称为最新动态屏幕.最近任务列表或最近使用的应用)是一个系统级别 UI,其中列出了最近访问过的 Activity 和任务. 用户可以浏览该列表并选择要恢复的任务,也可以通过滑动清除 ...

  9. Android事件分发机制浅谈(一)

    ---恢复内容开始--- 一.是什么 我们首先要了解什么是事件分发,通俗的讲就是,当一个触摸事件发生的时候,从一个窗口到一个视图,再到一个视图,直至被消费的过程. 二.做什么 在深入学习android ...

  10. Maven(一)linux下安装

    1.检查是否安装JDK,并且设置了环境变量(JAVA_HOME): echo $JAVA_HOME java -version 运行结果: 显示jdk的安装路径,和java的版本,如: #jdk路径 ...