Ejemplo n.º 1
0
        protected override string WriteDataType(DatabaseColumn column)
        {
            var type = new DataTypeWriter().WriteDataType(column);

            if (column.IsPrimaryKey && (Table.PrimaryKey == null || Table.PrimaryKey.Columns.Count == 1))
            {
                type += " PRIMARY KEY";
                if (column.IsAutoNumber) //must be integer primary key
                {
                    return("INTEGER PRIMARY KEY AUTOINCREMENT");
                }
            }
            if (!column.Nullable)
            {
                type += " NOT NULL";
            }
            //if there's a default value, and it's not a guid generator or autonumber
            if (!string.IsNullOrEmpty(column.DefaultValue) &&
                !SqlTranslator.IsGuidGenerator(column.DefaultValue) &&
                !column.IsAutoNumber)
            {
                var value = SqlTranslator.Fix(column.DefaultValue);
                //SqlServer (N'string') format
                if (value.StartsWith("(N'", StringComparison.OrdinalIgnoreCase))
                {
                    value = value.Replace("(N'", "('");
                }
                type += " DEFAULT " + value;
            }

            return(type);
        }
Ejemplo n.º 2
0
        protected override string WriteDataType(DatabaseColumn column)
        {
            var type = new DataTypeWriter().WriteDataType(column);

            if (column.IsPrimaryKey && (Table.PrimaryKey == null || Table.PrimaryKey.Columns.Count == 1))
            {
                type += " PRIMARY KEY";
                if (column.IsIdentity)
                {
                    type += " AUTOINCREMENT";
                }
            }
            if (!column.Nullable)
            {
                type += " NOT NULL";
            }
            //if there's a default value, and it's not a guid generator
            if (!string.IsNullOrEmpty(column.DefaultValue) && !SqlTranslator.IsGuidGenerator(column.DefaultValue))
            {
                var value = SqlTranslator.Fix(column.DefaultValue);
                type += " DEFAULT " + value;
            }

            return(type);
        }
Ejemplo n.º 3
0
 protected virtual string FixDefaultValue(string defaultValue)
 {
     if (SqlTranslator.IsGuidGenerator(defaultValue) && !"newsequentialid()".Equals(defaultValue, StringComparison.OrdinalIgnoreCase))
     {
         return("newid()");
     }
     return(SqlTranslator.Fix(defaultValue));
 }
Ejemplo n.º 4
0
 private static string FixDefaultValue(string defaultValue)
 {
     //Guid defaults.
     if (SqlTranslator.IsGuidGenerator(defaultValue))
     {
         return("uuid_generate_v1()"); //use uuid-osp contrib
     }
     return(SqlTranslator.Fix(defaultValue));
 }
Ejemplo n.º 5
0
 private static string FixDefaultValue(DatabaseColumn column)
 {
     //Guid defaults.
     if (SqlTranslator.IsGuidGenerator(column.DefaultValue))
     {
         return("SYS_GUID()");
     }
     return(SqlTranslator.Fix(column.DefaultValue));
 }
Ejemplo n.º 6
0
 private static string FixDefaultValue(string defaultValue)
 {
     //Guid defaults.
     if (SqlTranslator.IsGuidGenerator(defaultValue))
     {
         return("UUID()");
     }
     return(SqlTranslator.Fix(defaultValue));
 }
Ejemplo n.º 7
0
 private static string FixDefaultValue(string defaultValue)
 {
     //Guid defaults.
     if (SqlTranslator.IsGuidGenerator(defaultValue))
     {
         return(null); //there is no native guid (uuid) generator in DB2
     }
     return(SqlTranslator.Fix(defaultValue));
 }
Ejemplo n.º 8
0
 private static string FixDefaultValue(DatabaseColumn column)
 {
     //Guid defaults.
     if (SqlTranslator.IsGuidGenerator(column.DefaultValue))
     {
         return("SYS_GUID()");
     }
     //standard oracle shouldn't be translated
     foreach (var s in OracleFunctions)
     {
         if (string.Equals(column.DefaultValue, s, StringComparison.OrdinalIgnoreCase))
         {
             return(column.DefaultValue);
         }
     }
     return(SqlTranslator.Fix(column.DefaultValue));
 }