protected override string WriteDataType(DatabaseColumn column) { var type = new DataTypeWriter().WriteDataType(column); type += (!column.Nullable ? " NOT NULL" : string.Empty); var defaultValue = column.DefaultValue; if (!string.IsNullOrEmpty(defaultValue)) { defaultValue = FixDefaultValue(defaultValue); const string defaultConstraint = " DEFAULT "; if (IsStringColumn(column)) { type += defaultConstraint + "'" + defaultValue + "'"; } else //numeric default { type += defaultConstraint + defaultValue; } } //MySql auto-increments MUST BE primary key if (column.IsAutoNumber) type += " AUTO_INCREMENT PRIMARY KEY"; else if (column.IsPrimaryKey && Table.PrimaryKey.Columns.Count == 1) type += " PRIMARY KEY"; return type; }
protected override string WriteDataType(DatabaseColumn column) { var type = new DataTypeWriter().WriteDataType(column); type += (!column.Nullable ? " NOT NULL" : string.Empty); var defaultValue = column.DefaultValue; if (!string.IsNullOrEmpty(defaultValue)) { defaultValue = FixDefaultValue(defaultValue); const string defaultConstraint = " DEFAULT "; if (IsStringColumn(column)) { type += defaultConstraint + "'" + defaultValue + "'"; } else //numeric default { type += defaultConstraint + defaultValue; } } //MySql auto-increments MUST BE primary key if (column.IsIdentity) { type += " AUTO_INCREMENT PRIMARY KEY"; } else if (column.IsPrimaryKey && Table.PrimaryKey.Columns.Count == 1) { type += " PRIMARY KEY"; } return(type); }