unity 3 d無料で使いやすいデータベース処理フレームワークデータベース直結フレームワーク

9313 ワード

一、概説
先日、PCゲームの開発をしていた兄たちがUnity 3 dを使っていました.
ちょうど私を見つけた.
私は彼にUnity 3 dがどのようにMoon.Ormを知能化してプログラミングする方法を提供した.
もっと便利になる方法を見てみましょう
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();
                db.Remove();
                db.Remove();
                 */
                //    
                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(ScoreSet.SelectAll().Where(ScoreSet.ID.BiggerThan(0)));
                
                
            }
            Console.Write("Press any key to continue . . . ");
            Console.ReadKey(true);
        }
    }
}

 
二、Unity 3 Dでどのように使うか.
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データベースファイルをunity 3 dエディタexeの場所に配置します.
エディタでクエリーの結果が直接表示されます.
注意:および最終的なターゲットプログラムに同様に1部置く.
 
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(9));

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

}