Ejemplo n.º 1
0
 // テーブルの出力
 void DumpTable(string subject, SQLiteTable table)
 {
     if (!string.IsNullOrEmpty(subject))
     {
         Console.text += $"--- Dump {subject} ---\n";
     }
     if (SQLiteTable.IsNullOrEmpty(table))
     {
         Console.text += "ERROR\n";
     }
     else
     {
         for (var row = 0; row < table.Rows.Count; row++)
         {
             Console.text += $"#{row + 1}/{table.Rows.Count}\n";
             foreach (ColumnDefinition column in table.Columns)
             {
                 if (table [row, column.Name] != null)
                 {
                     Console.text += $"{column.Name} {ColumnDefinition.ColumnTypeName [column.Type]}: {table [row, column.Name]}\n";
                 }
             }
         }
     }
     Console.text += "===\n";
     Debug.Log(table);
 }
Ejemplo n.º 2
0
        // テスト
        private void Start()
        {
            // 開始宣言
            Console.text = "SQLiteUnity Test Start\n\n";
            Debug.Log("Start");

            // DB接続とテスト (初回は生成)
            using (Database = new SQLite("SQLiteTest.db", Creation)) {
                // 初回のみ
                if (SQLiteTable.IsNullOrEmpty(Party.GetTable()))
                {
                    // 適当にキャラを生成
                    var characters = new List <string> {
                        "太郎", "花子", "二郎", "三郎"
                    }.ConvertAll(name => Character.NewCharacter(name));

                    // 適当にパーティを生成してメンバーを追加
                    var P1 = Party.NewParty("不滅の旅団", "ガンガンいこうぜ!");
                    P1.Add(characters [0], JobClass.Fighter, "俺がリーダーだぜ!");
                    P1.Add(characters [1], JobClass.Cleric, "紅一点");
                    P1.Add(characters [2], JobClass.Archer, "…");
                    var P2 = Party.NewParty("肉球", "まったり");
                    P2.Add(characters [3], JobClass.Fighter, "のんびりやりましょう");
                    P2.Add(characters [2], JobClass.Cleric, "…");
                    P2.Add(characters [1], JobClass.Archer, "よろしくお願いします");
                }
                // 状況の取得と表示
                foreach (SQLiteRow row in Party.GetTable())
                {
                    Console.text += $"{new Party (row.GetColumn (Guid.Parse, "PUID"))}\n=====\n";
                }
                this.DumpTable("パーティ", Party.GetTable());
                this.DumpTable("メンバー", Member.GetTable());
                this.DumpTable("キャラクタ", Character.GetTable());
            }

            // 保存場所の報告
            Console.text += $"\npath {Application.persistentDataPath}";
            Debug.Log(Application.persistentDataPath);
        }