/// <summary> /// Create a 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> public APSqlInsertCommand(APTableDef tableDef) { if (tableDef == null) { throw new ArgumentNullException("tableDef"); } _tableDef = tableDef; }
/// <summary> /// Create a 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="subQuery">SubQuery.</param> /// <param name="clause">The 'SELECT' clause.</param> public APSqlInsertCommand(APTableDef tableDef, APSqlSelectCommand subQuery, APSqlSelectClause clause) { if (tableDef == null) throw new ArgumentNullException("tableDef"); _tableDef = tableDef; _subQuery = subQuery; _selectClause = clause; }
/// <summary> /// Create a 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="subQuery">SubQuery.</param> /// <param name="phrases">The 'SELECT' phrases.</param> public APSqlInsertCommand(APTableDef tableDef, APSqlSelectCommand subQuery, IEnumerable<APSqlSelectPhrase> phrases) { if (tableDef == null) throw new ArgumentNullException("tableDef"); _tableDef = tableDef; _subQuery = subQuery; _selectClause = new APSqlSelectClause(phrases); }
/// <summary> /// Create a 'FROM' phrase. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="joinType">SQL 'JOIN' type.</param> /// <param name="joinOnPhrase">SQL 'JOIN' condition.</param> public APSqlFromPhrase(APTableDef tableDef, APSqlJoinType joinType, APSqlWherePhrase joinOnPhrase) { if (tableDef == null) throw new ArgumentNullException("tableDef"); _tableDef = tableDef; _joinType = joinType; _joinOnPhrase = joinOnPhrase; }
/// <summary> /// Create a new column define. /// </summary> /// <param name="tableName">Table name in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public APColumnDef(string tableName, string columnName, bool isNullable) { if (columnName == null) throw new ArgumentNullException("columnName"); if (columnName == String.Empty) throw new ArgumentException("columnName"); _tableDef = new APTableDef(tableName); _columnName = columnName; _isNullable = isNullable; }
/// <summary> /// Create a 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="subQuery">SubQuery.</param> /// <param name="phrases">The 'SELECT' phrases.</param> public APSqlInsertCommand(APTableDef tableDef, APSqlSelectCommand subQuery, IEnumerable <APSqlSelectPhrase> phrases) { if (tableDef == null) { throw new ArgumentNullException("tableDef"); } _tableDef = tableDef; _subQuery = subQuery; _selectClause = new APSqlSelectClause(phrases); }
/// <summary> /// Create a 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="subQuery">SubQuery.</param> /// <param name="clause">The 'SELECT' clause.</param> public APSqlInsertCommand(APTableDef tableDef, APSqlSelectCommand subQuery, APSqlSelectClause clause) { if (tableDef == null) { throw new ArgumentNullException("tableDef"); } _tableDef = tableDef; _subQuery = subQuery; _selectClause = clause; }
/// <summary> /// Create a 'FROM' phrase. /// </summary> /// <param name="tableDef">Table definition.</param> /// <param name="joinType">SQL 'JOIN' type.</param> /// <param name="joinOnPhrase">SQL 'JOIN' condition.</param> public APSqlFromPhrase(APTableDef tableDef, APSqlJoinType joinType, APSqlWherePhrase joinOnPhrase) { if (tableDef == null) { throw new ArgumentNullException("tableDef"); } _tableDef = tableDef; _joinType = joinType; _joinOnPhrase = joinOnPhrase; }
/// <summary> /// Create a new LookupAPRptColumn. /// </summary> /// <param name="selectExpr">SQL 'SELECT' Expression.</param> /// <param name="id">Column unique ID.</param> /// <param name="title">Title.</param> /// <param name="joinTable">Join Table.</param> /// <param name="joinType">Join Type.</param> /// <param name="relationDef">Relation define.</param> /// <param name="relationShowColumn">Show relation column.</param> public LookupAPRptColumn(APSqlOperateExpr selectExpr, string id, string title, APTableDef joinTable, APSqlJoinType joinType, APRelationDef relationDef, APRptColumn relationShowColumn) : base(selectExpr, id, title) { _joinTable = joinTable; _joinType = joinType; _relationDef = relationDef; _relationShowColumn = relationShowColumn; }
/// <summary> /// Create a new column define. /// </summary> /// <param name="tableName">Table name in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public APColumnDef(string tableName, string columnName, bool isNullable) { if (columnName == null) { throw new ArgumentNullException("columnName"); } if (columnName == String.Empty) { throw new ArgumentException("columnName"); } _tableDef = new APTableDef(tableName); _columnName = columnName; _isNullable = isNullable; }
/// <summary> /// Determines whether two Object instances are equal. /// </summary> /// <param name="obj">The Object to compare with the current Object.</param> /// <returns>true if the specified Object is equal to the current Object; otherwise, false.</returns> public override bool Equals(object obj) { if (obj == null) { return(false); } APTableDef other = obj as APTableDef; if (obj != null) { return(_tableName == other._tableName && _aliasName == other._aliasName); } return(false); }
/// <summary> /// Select 'SET' phrase from metadata. /// </summary> /// <param name="tableDef">The table defined.</param> /// <param name="data">The metadata.</param> /// <returns>The phrases.</returns> public static IEnumerable <APSqlSetPhrase> Select(APTableDef tableDef, object data) { Type typeColumnDef = typeof(APColumnDef); Type typeData = data.GetType(); foreach (var piColumn in tableDef.GetType().GetProperties()) { if (typeColumnDef.IsAssignableFrom(piColumn.PropertyType)) { var columnDef = (APColumnDef)piColumn.GetValue(tableDef, null); var piProp = typeData.GetProperty(columnDef.ColumnName, System.Reflection.BindingFlags.Public | System.Reflection.BindingFlags.Instance | System.Reflection.BindingFlags.IgnoreCase); if (piProp != null) { yield return(new APSqlSetPhrase(columnDef, piProp.GetValue(data, null))); } } } }
/// <summary> /// Create a 'FROM' phrase. /// </summary> /// <param name="tableDef">Table definition.</param> public APSqlFromPhrase(APTableDef tableDef) : this(tableDef, APSqlJoinType.None, null) { }
/// <summary> /// Create a new 'DELETE' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlDeleteCommand delete(APTableDef tableDef) { return new APSqlDeleteCommand(tableDef); }
/// <summary> /// Create a new 'UPDATE' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlUpdateCommand update(APTableDef tableDef) { return new APSqlUpdateCommand(tableDef); }
/// <summary> /// Create a new APSqlAsteriskExpr. /// </summary> /// <param name="tableName">Table name in database.</param> public APSqlAsteriskExpr(string tableName) { _tableDef = new APTableDef(tableName); }
/// <summary> /// Create a new 'DELETE' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlDeleteCommand delete(APTableDef tableDef) { return(new APSqlDeleteCommand(tableDef)); }
/// <summary> /// Create a new column define. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public APColumnDef(APTableDef tableDef, string columnName) : this(tableDef, columnName, false) { }
/// <summary> /// Create a new byte[] column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> /// <param name="length">Data length.</param> public BytesAPColumnDef(APTableDef tableDef, string columnName, bool isNullable, int length) : base(tableDef, columnName, isNullable) { _length = length; }
/// <summary> /// Create a new decimal column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> /// <param name="precision">Precision.</param> /// <param name="scale">Scale.</param> public DecimalAPColumnDef(APTableDef tableDef, string columnName, bool isNullable, int precision, int scale) : base(tableDef, columnName, isNullable) { _precision = precision; _scale = scale; }
/// <summary> /// Create a new APSqlAsteriskExpr. /// </summary> /// <param name="tableDef">Table definition in database.</param> public APSqlAsteriskExpr(APTableDef tableDef) { _tableDef = tableDef; }
/// <summary> /// Create a new datetime column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public DateTimeAPColumnDef(APTableDef tableDef, string columnName, bool isNullable) : base(tableDef, columnName, isNullable) { }
/// <summary> /// Create a new single column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public SingleAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new decimal column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public DecimalAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new datetime column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public DateTimeAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new 'UPDATE' command. /// </summary> /// <param name="tableDef">Table definition.</param> public APSqlUpdateCommand(APTableDef tableDef) { if (tableDef == null) throw new ArgumentNullException("tableDef"); _tableDef = tableDef; }
/// <summary> /// Create a new 'UPDATE' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlUpdateCommand update(APTableDef tableDef) { return(new APSqlUpdateCommand(tableDef)); }
/// <summary> /// Create a new sbyte column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public SByteAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new enumerate column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public EnumAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { checkT(); }
/// <summary> /// Create a new enumerate column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public EnumAPColumnDef(APTableDef tableDef, string columnName, bool isNullable) : base(tableDef, columnName, isNullable) { checkT(); }
/// <summary> /// Create a new string column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> /// <param name="length">Data length.</param> public StringAPColumnDef(APTableDef tableDef, string columnName, bool isNullable, int length) : base(tableDef, columnName, isNullable) { _length = length; }
/// <summary> /// Create a new int64 column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public Int64APColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new boolean column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public BooleanAPColumnDef(APTableDef tableDef, string columnName, bool isNullable) : base(tableDef, columnName, isNullable) { }
/// <summary> /// Create a new byte[] column definition. /// </summary> /// <param name="tableDef">Table definition in database</param> /// <param name="columnName">Column name in database.</param> public BytesAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new int16 column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> /// <param name="isNullable">Is nullable.</param> public Int16APColumnDef(APTableDef tableDef, string columnName, bool isNullable) : base(tableDef, columnName, isNullable) { }
/// <summary> /// Create a new boolean column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public BooleanAPColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlInsertCommand insert(APTableDef tableDef) { return(new APSqlInsertCommand(tableDef)); }
/// <summary> /// Create a new int16 column definition. /// </summary> /// <param name="tableDef">Table definition in database.</param> /// <param name="columnName">Column name in database.</param> public Int16APColumnDef(APTableDef tableDef, string columnName) : base(tableDef, columnName) { }
/// <summary> /// Create a new 'INSERT' command. /// </summary> /// <param name="tableDef">Table definition.</param> /// <returns>The command.</returns> public static APSqlInsertCommand insert(APTableDef tableDef) { return new APSqlInsertCommand(tableDef); }
/// <summary> /// Create 'Full JOIN' phrase. /// </summary> /// <param name="tableDef">The table defined.</param> /// <param name="wherePhrase">Join 'ON' phrase.</param> /// <returns>A 'FROM' phrase.</returns> public static APSqlFromPhrase JoinFull(this APTableDef tableDef, APSqlWherePhrase wherePhrase) { return(new APSqlFromPhrase(tableDef, APSqlJoinType.Full, wherePhrase)); }