public TableColumn?VisitByteArray(TempTableBuilderCtx arg, bool?isNull, int?length, bool fix) { var arrayTableColumn = EnsureColumnType <NullableByteArrayTableColumn>(arg); if (ReferenceEquals(arrayTableColumn, null)) { return(CreateCol(length)); } else { if (arrayTableColumn.SqlType.GetSize().HasValue&& (!length.HasValue || length.Value > arrayTableColumn.SqlType.GetSize())) { return(CreateCol(length)); } return(arrayTableColumn); } NullableByteArrayTableColumn CreateCol(int?len) { return(new NullableByteArrayTableColumn(this.Alias, arg.ColumnName, this, fix ? new ExprTypeFixSizeByteArray(length.AssertNotNull("Length cannot be null for fixed size array")) : new ExprTypeByteArray(length), arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); } }
public TableFk3AB(Alias alias) : base(schema : "dbo", name : "Fk3AB", alias : alias) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey()); this.Parent0 = this.CreateInt32Column("Parent0", ColumnMeta.ForeignKey <TableFk0>(t => t.Id)); this.ParentA = this.CreateInt32Column("ParentA", ColumnMeta.ForeignKey <TableFk1A>(t => t.Id).ForeignKey <TableFk2AB>(t => t.ParentA)); this.ParentB = this.CreateInt32Column("ParentB", ColumnMeta.ForeignKey <TableFk1B>(t => t.Id).ForeignKey <TableFk2AB>(t => t.ParentB)); }
public TableItOrder(Alias alias) : base(schema : "dbo", name : "ItOrder", alias : alias) { this.OrderId = this.CreateInt32Column("OrderId", ColumnMeta.PrimaryKey().Identity()); this.CustomerId = this.CreateInt32Column("CustomerId", ColumnMeta.ForeignKey <TableItCustomer>(t => t.CustomerId)); this.DateCreated = this.CreateDateTimeColumn("DateCreated", false, ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); this.Notes = this.CreateNullableStringColumn(name: "Notes", size: 100, isUnicode: true, isText: false, columnMeta: null); }
public TableColumn VisitString(TempTableBuilderCtx arg, bool?isNull, int?size, bool fix) { var stringTableColumn = EnsureColumnType <NullableStringTableColumn>(arg); if (ReferenceEquals(stringTableColumn, null)) { return(CreateString(size)); } else { if (stringTableColumn.SqlType.GetSize().HasValue&& (!size.HasValue || size.Value > stringTableColumn.SqlType.GetSize())) { return(CreateString(size)); } return(stringTableColumn); } NullableStringTableColumn CreateString(int?len) { return(new NullableStringTableColumn(this.Alias, arg.ColumnName, this, fix ? new ExprTypeFixSizeString(len.AssertNotNull("Length cannot be null for fixed size string"), true) : new ExprTypeString(len, true, false), arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); } }
public TableItCustomer(Alias alias) : base(schema : "dbo", name : "ItCustomer", alias : alias) { this.CustomerId = this.CreateInt32Column("CustomerId", ColumnMeta.PrimaryKey().Identity()); this.UserId = this.CreateNullableInt32Column("UserId", ColumnMeta.ForeignKey <TableItUser>(t => t.UserId)); this.CompanyId = this.CreateNullableInt32Column("CompanyId", ColumnMeta.ForeignKey <TableItCompany>(t => t.CompanyId)); this.AddUniqueIndex(this.UserId, this.CompanyId); this.AddUniqueIndex(this.CompanyId, this.UserId); }
public TableColumn?VisitXml(TempTableBuilderCtx arg, bool?isNull) { return(EnsureColumnType <NullableStringTableColumn>(arg) ?? new NullableStringTableColumn(this.Alias, arg.ColumnName, this, ExprTypeXml.Instance, arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); }
public TableCustomer(Alias alias) : base("dbo", "Customer", alias) { this.CustomerId = this.CreateInt32Column(nameof(this.CustomerId), ColumnMeta.PrimaryKey().Identity()); this.UserId = this.CreateNullableInt32Column(nameof(this.UserId), ColumnMeta.ForeignKey <TableUser>(u => u.UserId)); this.CompanyId = this.CreateNullableInt32Column(nameof(this.CompanyId), ColumnMeta.ForeignKey <TableCompany>(u => u.CompanyId)); //Indexes this.AddUniqueIndex(this.UserId, this.CompanyId); this.AddUniqueIndex(this.CompanyId, this.UserId); }
public TableCompany(Alias alias) : base("dbo", "Company", alias) { this.CompanyId = this.CreateInt32Column(nameof(this.CompanyId), ColumnMeta.PrimaryKey().Identity()); this.CompanyName = this.CreateStringColumn(nameof(this.CompanyName), 250); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); this.ModifiedAt = this.CreateDateTimeColumn("ModifiedAt", columnMeta: ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); }
public TableUser(Alias alias) : base("dbo", "User", alias) { this.UserId = this.CreateInt32Column("UserId", ColumnMeta.PrimaryKey().Identity()); this.FirstName = this.CreateStringColumn("FirstName", size: 255, isUnicode: true); this.LastName = this.CreateStringColumn("LastName", size: 255, isUnicode: true); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); this.ModifiedAt = this.CreateDateTimeColumn("ModifiedAt", columnMeta: ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); }
public TableItCompany(Alias alias) : base(schema : "dbo", name : "ItCompany", alias : alias) { this.CompanyId = this.CreateInt32Column("CompanyId", ColumnMeta.PrimaryKey().Identity()); this.ExternalId = this.CreateGuidColumn("ExternalId", null); this.CompanyName = this.CreateStringColumn(name: "CompanyName", size: 250, isUnicode: false, isText: false, columnMeta: null); this.Version = this.CreateInt32Column("Version", null); this.Created = this.CreateDateTimeColumn("Created", false, null); this.Modified = this.CreateDateTimeColumn("Modified", false, null); this.AddUniqueIndex(this.ExternalId); this.AddIndex(this.CompanyName); }
public TableItUser(Alias alias) : base(schema : "dbo", name : "ItUser", alias : alias) { this.UserId = this.CreateInt32Column("UserId", ColumnMeta.PrimaryKey().Identity()); this.ExternalId = this.CreateGuidColumn("ExternalId", null); this.FirstName = this.CreateStringColumn(name: "FirstName", size: 255, isUnicode: false, isText: false, columnMeta: null); this.LastName = this.CreateStringColumn(name: "LastName", size: 255, isUnicode: false, isText: false, columnMeta: null); this.Email = this.CreateStringColumn(name: "Email", size: 255, isUnicode: false, isText: false, columnMeta: null); this.RegDate = this.CreateDateTimeColumn("RegDate", false, null); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); this.Created = this.CreateDateTimeColumn("Created", false, ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); this.Modified = this.CreateDateTimeColumn("Modified", false, ColumnMeta.DefaultValue(SqQueryBuilder.GetUtcDate())); this.AddUniqueClusteredIndex(this.ExternalId); this.AddIndex(this.FirstName); this.AddIndex(IndexMetaColumn.Desc(this.LastName)); }
public TableItAllColumnTypes(bool postgres, Alias alias) : base(schema : "dbo", name : "ItAllColumnTypes", alias : alias) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey().Identity()); this.ColBoolean = this.CreateBooleanColumn("ColBoolean", null); this.ColNullableBoolean = this.CreateNullableBooleanColumn("ColNullableBoolean", null); if (!postgres) { this.ColByte = this.CreateByteColumn("ColByte", null); this.ColNullableByte = this.CreateNullableByteColumn("ColNullableByte", null); } this.ColInt16 = this.CreateInt16Column("ColInt16", null); this.ColNullableInt16 = this.CreateNullableInt16Column("ColNullableInt16", null); this.ColInt32 = this.CreateInt32Column("ColInt32", null); this.ColNullableInt32 = this.CreateNullableInt32Column("ColNullableInt32", null); this.ColInt64 = this.CreateInt64Column("ColInt64", null); this.ColNullableInt64 = this.CreateNullableInt64Column("ColNullableInt64", null); this.ColDecimal = this.CreateDecimalColumn("ColDecimal", new DecimalPrecisionScale(precision: 10, scale: 6), null); this.ColNullableDecimal = this.CreateNullableDecimalColumn("ColNullableDecimal", new DecimalPrecisionScale(precision: 10, scale: 6), null); this.ColDouble = this.CreateDoubleColumn("ColDouble", null); this.ColNullableDouble = this.CreateNullableDoubleColumn("ColNullableDouble", null); this.ColDateTime = this.CreateDateTimeColumn("ColDateTime", false, null); this.ColNullableDateTime = this.CreateNullableDateTimeColumn("ColNullableDateTime", false, null); this.ColGuid = this.CreateGuidColumn("ColGuid", null); this.ColNullableGuid = this.CreateNullableGuidColumn("ColNullableGuid", null); this.ColStringUnicode = this.CreateStringColumn(name: "ColStringUnicode", size: null, isUnicode: true, isText: false, columnMeta: null); this.ColNullableStringUnicode = this.CreateNullableStringColumn(name: "ColNullableStringUnicode", size: null, isUnicode: true, isText: false, columnMeta: null); this.ColStringMax = this.CreateStringColumn(name: "ColStringMax", size: null, isUnicode: false, isText: false, columnMeta: null); this.ColNullableStringMax = this.CreateNullableStringColumn(name: "ColNullableStringMax", size: null, isUnicode: false, isText: false, columnMeta: null); this.ColString5 = this.CreateStringColumn(name: "ColString5", size: 5, isUnicode: false, isText: false, columnMeta: null); this.ColByteArraySmall = this.CreateByteArrayColumn("ColByteArraySmall", 255, null); this.ColByteArrayBig = this.CreateByteArrayColumn("ColByteArrayBig", null, null); this.ColNullableByteArraySmall = this.CreateNullableByteArrayColumn("ColNullableByteArraySmall", 255, null); this.ColNullableByteArrayBig = this.CreateNullableByteArrayColumn("ColNullableByteArrayBig", null, null); this.ColFixedSizeString = this.CreateFixedSizeStringColumn(name: "ColFixedSizeString", size: 3, isUnicode: false, columnMeta: null); this.ColNullableFixedSizeString = this.CreateNullableFixedSizeStringColumn(name: "ColNullableFixedSizeString", size: 3, isUnicode: true, columnMeta: null); this.ColFixedSizeByteArray = this.CreateFixedSizeByteArrayColumn("ColFixedSizeByteArray", 2, null); this.ColNullableFixedSizeByteArray = this.CreateNullableFixedSizeByteArrayColumn("ColNullableFixedSizeByteArray", 2, null); this.ColXml = this.CreateXmlColumn("ColXml", null); this.ColNullableXml = this.CreateNullableXmlColumn("ColNullableXml", null); }
public TempTable(Alias alias = default) : base("tempTable", alias) { this.Id = CreateInt32Column(nameof(Id), ColumnMeta.PrimaryKey().Identity()); this.Name = CreateStringColumn(nameof(Name), 255); }
public TestMergeTmpTable() : base("TargetTable", SqExpress.Alias.Auto) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey()); this.Value = this.CreateInt32Column("Value"); this.Version = this.CreateInt32Column("Version", ColumnMeta.DefaultValue(0)); }
public TableFavoriteFilter(Alias alias) : base("dbo", "FavoriteFilter", alias) { this.FavoriteFilterId = CreateInt32Column(nameof(this.FavoriteFilterId), ColumnMeta.PrimaryKey().Identity()); this.Name = CreateStringColumn(nameof(this.Name), 255); }
public TableFk1A(Alias alias) : base(schema : "dbo", name : "Fk1A", alias : alias) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey()); this.Parent = this.CreateInt32Column("Parent", ColumnMeta.ForeignKey <TableFk0>(t => t.Id)); }
public TmpStr(Alias alias = default) : base("TmpStr", alias) { this.Index = this.CreateInt32Column("Index", ColumnMeta.PrimaryKey()); this.Text = this.CreateStringColumn("Text", 255, true); }
public TableFk0(Alias alias) : base(schema : "dbo", name : "Fk0", alias : alias) { this.Id = this.CreateInt32Column("Id", ColumnMeta.PrimaryKey()); }
public Organization(Alias alias) : base("dbo", nameof(Organization), alias) { this.OrganizationId = this.CreateInt32Column(nameof(this.OrganizationId), ColumnMeta.PrimaryKey()); this.OrganizationName = this.CreateStringColumn(nameof(this.OrganizationName), 250); }
public TableColumn VisitDecimal(TempTableBuilderCtx arg, bool?isNull, DecimalPrecisionScale?decimalPrecisionScale) { var column = EnsureColumnType <NullableDecimalTableColumn>(arg); if (ReferenceEquals(column, null)) { return(CreateColumn(decimalPrecisionScale)); } else { if (decimalPrecisionScale.HasValue) { if (column.PrecisionScale.HasValue) { var old = column.PrecisionScale.Value; var newPs = decimalPrecisionScale.Value; if (old.Precision < newPs.Precision || old.Scale < newPs.Scale) { return(CreateColumn(decimalPrecisionScale)); } } } return(column); } NullableDecimalTableColumn CreateColumn(DecimalPrecisionScale?precisionScale) { return(new NullableDecimalTableColumn(this.Alias, arg.ColumnName, this, precisionScale, arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); } }
public Customer(Alias alias) : base("dbo", nameof(Customer), alias) { this.CustomerId = this.CreateInt32Column(nameof(CustomerId), ColumnMeta.PrimaryKey().Identity()); this.UserId = this.CreateNullableInt32Column(nameof(UserId), ColumnMeta.ForeignKey <User>(u => u.UserId)); this.OrganizationIdId = this.CreateNullableInt32Column(nameof(OrganizationIdId), ColumnMeta.ForeignKey <Organization>(u => u.OrganizationId)); }
public TableColumn?VisitGuid(TempTableBuilderCtx arg, bool?isNull) { return(EnsureColumnType <NullableGuidTableColumn>(arg) ?? new NullableGuidTableColumn(this.Alias, arg.ColumnName, this, arg.PrimaryKey ? ColumnMeta.PrimaryKey() : null)); }