コード例 #1
0
        public void CreateTable()
        {
            if (myDB.ExistsTable(Name))
            {
                return;
            }

            ValidationResult result = Schema.Validate();

            if (result != ValidationResult.None)
            {
                throw new ArgumentException("invalid table description: " + result);
            }

            StringBuilder sb = new StringBuilder();

            sb.Append("CREATE TABLE ");
            sb.Append(Schema.Name);
            sb.Append(" ( ");

            var last = Schema.Columns.Last();

            foreach (var column in Schema.Columns)
            {
                sb.Append(column.ColumnName);
                sb.Append("  ");
                sb.Append(myDB.GetDBType(column.DataType));

                if (column.ColumnName == Schema.IdColumn)
                {
                    sb.Append(" PRIMARY KEY AUTOINCREMENT");
                }
                else
                {
                    sb.Append((column.AllowDBNull ? " NULL" : " NOT NULL"));
                }

                if (column != last)
                {
                    sb.Append(",");
                }
            }
            sb.Append(");");

            myDB.Execute(sb.ToString());
        }
コード例 #2
0
ファイル: CreateTableAction.cs プロジェクト: bg0jr/Maui
        public void Execute( IDatabaseSC db )
        {
            if ( db.ExistsTable( TableName ) )
            {
                myLogger.Debug( "Table {0} already exists. Skipping", TableName );
                return;
            }

            myLogger.Debug( "Creating table {0}", TableName );
            db.Execute( CreateCmd );
        }
コード例 #3
0
ファイル: CreateTableAction.cs プロジェクト: riyanhax/Maui
        public void Execute(IDatabaseSC db)
        {
            if (db.ExistsTable(TableName))
            {
                myLogger.Debug("Table {0} already exists. Skipping", TableName);
                return;
            }

            myLogger.Debug("Creating table {0}", TableName);
            db.Execute(CreateCmd);
        }
コード例 #4
0
        private void InsertKey(IDatabaseSC db)
        {
            var cmd = string.Format("INSERT INTO db_metadata VALUES ( '{0}', '{1}' );", Key, Value);

            db.Execute(cmd);
        }
コード例 #5
0
        private void DeleteKey(IDatabaseSC db)
        {
            var cmd = string.Format("DELETE FROM db_metadata where key == '{0}';", Key);

            db.Execute(cmd);
        }
コード例 #6
0
 public void Rollback(IDatabaseSC db)
 {
     db.Execute(RollbackCmd);
 }
コード例 #7
0
 public void Execute(IDatabaseSC db)
 {
     db.Execute(UpdateCmd);
 }
コード例 #8
0
ファイル: CreateTableAction.cs プロジェクト: bg0jr/Maui
 public void Rollback( IDatabaseSC db )
 {
     myLogger.Debug( "Dropping table {0}", TableName );
     db.Execute( "drop table " + TableName );
 }
コード例 #9
0
ファイル: CreateTableAction.cs プロジェクト: riyanhax/Maui
 public void Rollback(IDatabaseSC db)
 {
     myLogger.Debug("Dropping table {0}", TableName);
     db.Execute("drop table " + TableName);
 }
コード例 #10
0
ファイル: DBUpdateAction.cs プロジェクト: bg0jr/Maui
 public void Rollback( IDatabaseSC db )
 {
     db.Execute( RollbackCmd );
 }
コード例 #11
0
ファイル: DBUpdateAction.cs プロジェクト: bg0jr/Maui
 public void Execute( IDatabaseSC db )
 {
     db.Execute( UpdateCmd );
 }
コード例 #12
0
ファイル: MetadataUpdateAction.cs プロジェクト: bg0jr/Maui
 private void InsertKey( IDatabaseSC db )
 {
     var cmd = string.Format( "INSERT INTO db_metadata VALUES ( '{0}', '{1}' );", Key, Value );
     db.Execute( cmd );
 }
コード例 #13
0
ファイル: MetadataUpdateAction.cs プロジェクト: bg0jr/Maui
 private void DeleteKey( IDatabaseSC db )
 {
     var cmd = string.Format( "DELETE FROM db_metadata where key == '{0}';", Key );
     db.Execute( cmd );
 }