/// <summary> /// 获取SQLDOM元素类型 /// </summary> /// <param name="sqlElement">SQLDOM元素</param> /// <returns>SQLDOM元素类型</returns> public static int GetSqlElementType(SqlElement sqlElement) { SqlElementType elementType = SqlElementType.UnKnown; var type = sqlElement.GetType(); if (type == typeof(InsertField)) { elementType = SqlElementType.InsertField; } if (type == typeof(SqlPrimaryKeyField)) { elementType = SqlElementType.SqlPrimaryKeyField; } if (type == typeof(SelectListField)) { elementType = SqlElementType.SelectListField; } if (type == typeof(UpdateField)) { elementType = SqlElementType.UpdateField; } return((int)elementType); }
/// <summary> /// 根据SQLDOM元素类型初始化SQLDOM元素对象 /// </summary> /// <param name="sqlElementType">SQLDOM元素类型</param> /// <returns>SQLDOM元素对象</returns> public static SqlElement GetSQLElement(int sqlElementType) { SqlElement element = null; SqlElementType type = (SqlElementType)sqlElementType; switch (type) { case SqlElementType.InsertField: element = new InsertField(); break; case SqlElementType.SqlPrimaryKeyField: element = new SqlPrimaryKeyField(); break; case SqlElementType.SelectListField: element = new SelectListField(); break; case SqlElementType.UpdateField: element = new UpdateField(); break; case SqlElementType.From: element = new From(); break; case SqlElementType.FromItem: element = new FromItem(); break; case SqlElementType.JoinCondition: element = new JoinConditionStatement(); break; case SqlElementType.OrderByCondition: element = new ConditionStatement(); break; case SqlElementType.FilterCondition: element = new ConditionStatement(); break; case SqlElementType.UnKnown: break; } return(element); }