public override string SerializeTableFieldNullableOption(SQLTableField field) { if (field.AutoIncrements) return String.Empty; // NULL/NOT NULL is not required if it's an IDENTITY field else return base.SerializeTableFieldNullableOption(field); }
public virtual string SerializeTableFieldNullableOption(SQLTableField field) { if (field.AcceptsNull) return "NULL"; else return "NOT NULL"; }
public override string SerializeTableFieldDataType(SQLTableField field) { if (field.AutoIncrements) return "IDENTITY"; else return base.SerializeTableFieldDataType(field); }
public virtual string SerializeTableFieldDefaultOption(SQLTableField field) { if (field.Default != null) return "DEFAULT " + SerializeValue(field.Default); else return String.Empty; }
public virtual string SerializeTableFieldKeyTypeOption(SQLTableField field) { if (field.KeyType == KeyType.Primary) return "PRIMARY KEY"; else if (field.KeyType == KeyType.Unique) return "UNIQUE"; else return String.Empty; }
public virtual string SerializeTableFieldCollationOption(SQLTableField field) { return string.Empty; }
public virtual string SerializeTableFieldDataType(SQLTableField field) { return SerializeDataType(field.DataType, field.Size, field.Precision, field.ScaleLength); }
public virtual string SerializeTableField(SQLTableField field, SQLTableFields.AlterModeType alterMode) { var tokens = new TokenSerializer(); if (alterMode == SQLTableFields.AlterModeType.Drop) tokens.Add(SerializeTableFieldAsName(field)); else { tokens.Add(SerializeTableFieldAsName(field)); tokens.Add(SerializeTableFieldDataType(field)); tokens.Add(SerializeTableFieldCollationOption(field)); tokens.Add(SerializeTableFieldDefaultOption(field)); tokens.Add(SerializeTableFieldNullableOption(field)); tokens.Add(SerializeTableFieldKeyTypeOption(field)); } return tokens.ToString(); }
public virtual string SerializeTableFieldAsName(SQLTableField field) { return field.NameAsExpression.SQL(this); }
public override string SerializeTableFieldDataType(SQLTableField field) { if (field.AutoIncrements) return base.SerializeTableFieldDataType(field) + " GENERATED BY DEFAULT AS IDENTITY(START WITH 1 INCREMENT BY 1)"; else return base.SerializeTableFieldDataType(field); }
public override string SerializeTableFieldKeyTypeOption(SQLTableField field) { // must be set to a key type if it is an auto increment field if (field.AutoIncrements && field.KeyType == KeyType.None) return "UNIQUE"; else return base.SerializeTableFieldKeyTypeOption(field); }
public override string SerializeTableFieldDataType(SQLTableField field) { if (field.AutoIncrements) return base.SerializeTableFieldDataType(field) + " AUTO_INCREMENT"; else return base.SerializeTableFieldDataType(field); }
public override string SerializeTableFieldCollationOption(SQLTableField field) { // Force to case-insensitive text comparison. return "COLLATE NOCASE"; }
public override string SerializeTableField(SQLTableField field, SQLTableFields.AlterModeType alterMode) { // if altering or creating a field append the AUTOINCREMENT. Field format: name datatype default nullable keytype AUTOINCREMENT if (alterMode != SQLTableFields.AlterModeType.Drop && field.AutoIncrements) return base.SerializeTableField(field, alterMode) + " AUTOINCREMENT"; else return base.SerializeTableField(field, alterMode); }