Пример #1
0
        private void CreateTempTable()
        {
            tempTableName = RandomString(8, true);

            create = DBQuery.Create.Table(tempTableName);
            foreach (TableField tf in DataSchema.Fields)
            {
                if (tf.Type == FieldType._string)
                {
                    create.Add(tf.Field, DbType.String, 555, DBColumnFlags.Nullable);
                }
                else if (tf.Type == FieldType._datetime)
                {
                    create.Add(tf.Field, DbType.DateTime, DBColumnFlags.Nullable);
                }
                else if (tf.Type == FieldType._number)
                {
                    create.Add(tf.Field, DbType.String, 555, DBColumnFlags.Nullable);
                }
                else if (tf.Type == FieldType._bool)
                {
                    create.Add(tf.Field, DbType.Boolean, DBColumnFlags.Nullable);
                }
            }
            foreach (WhereStatement ws in DataSchema.Wheres)
            {
                var aa = DataSchema.Fields.Where(x => x.Field.ToLower() == ws.FieldName.ToLower()).FirstOrDefault();
                if (aa == null)
                {
                    create.Add(ws.FieldName, DbType.String);
                }
            }
            base.Database.ExecuteNonQuery(create);
        }
Пример #2
0
        /// <summary>
        /// returns the custom table creation statement
        /// </summary>
        /// <returns></returns>
        private static DBCreateTableQuery GetCustomTableQuery()
        {
            DBCreateTableQuery create = DBQuery.Create.Table(TableName)
                                        .Add(TblCol1, DbType.Int32, DBColumnFlags.AutoAssign | DBColumnFlags.PrimaryKey)
                                        .Add(TblCol2, DbType.AnsiString, 50, DBColumnFlags.Nullable).Default(DBConst.String("-"))
                                        .Add(TblCol3, DbType.String, 1000, DBColumnFlags.Nullable);

            return(create);
        }
Пример #3
0
        //
        // support methods that actually perform the operation on the database
        //

        #region private void CreateCustomTable(DBDatabase db)

        /// <summary>
        /// Creates a new custom table in the specified database
        /// </summary>
        /// <param name="db"></param>
        private void CreateCustomTable(DBDatabase db)
        {
            DBCreateTableQuery create = GetCustomTableQuery();

            //OleDb provider does not support default values
            if (db.ProviderName == "System.Data.OleDb")
            {
                create.ClearDefaults();
            }

            TestContext.WriteLine(create.ToSQLString(db));
            db.ExecuteNonQuery(create);
            TestContext.WriteLine("Table {0} Created", TableName);
        }