/AKDOA28/ZX.SPL/Factory/Dialect/Access.cs
# · C# · 221 lines · 184 code · 19 blank · 18 comment · 21 complexity · 1cb56a1137ad499427e82d9f32f10229 MD5 · raw file
- using System;
- using System.Collections;
- using System.Collections.Generic;
- using System.Text;
- using ZX.Common;
- //using ZX.DBModule;
-
- namespace ZX.SPL.Factory.Dialect
- {
- /// <summary>
- /// MsSqlServer 的摘要说明。
- /// </summary>
- public class Access : ZX.SPL.Factory.DialectFactory
- {
- public Access(object entitys)
- : base(entitys)
- {
- //
- // TODO: 在此处添加构造函数逻辑
- //
- }
-
- public override string BuildInsertCom()
- {
- System.Text.StringBuilder _InsStrIns = new StringBuilder("insert into " + this.GetTableName());
- System.Text.StringBuilder _InsStrFields = new StringBuilder();
- System.Text.StringBuilder _InsStr = new StringBuilder();
- System.Text.StringBuilder _InsStrValues = new StringBuilder();
- System.Collections.Generic.SortedDictionary<string, ClassField> ht = ReaderSqliteAutoMapper();
- if (ht == null)
- {
- //log
- return null;
- }
- ht.Remove(this.GetGuid()); // 去掉自增字段的信息
- int i = 0;
- IDictionaryEnumerator myEnumerator = ht.GetEnumerator();
- try
- {
- while (myEnumerator.MoveNext())
- {
- ClassField cf = myEnumerator as ClassField;
- if (i == 0)
- {
-
- _InsStrFields.Append("[" + myEnumerator.Key.ToString() + "]");
-
- if (cf.cType == "DT")
- {
- _InsStrValues.Append("'" + ((DateTime)cf.Field).ToString("s") + "'");
- }
- else
- {
- _InsStrValues.Append("'" + cf.Field + "'");
- }
- }
- else
- {
-
- _InsStrFields.Append(",[" + myEnumerator.Key.ToString() + "]");
- if (cf.Field == null)
- { _InsStrValues.Append(",null"); }
- else
- {
- if (cf.cType == "DT")
- {
- DateTime dt = ((DateTime)cf.Field);
- _InsStrValues.Append(",'" + dt.ToString("s") + "'");
- //_InsStrValues.Append(",'" + string.Format(dt.ToString("yyyy-MM-dd {0}:MM:SS") + "'"),dt.Hour>10?dt.Hour.ToString():"0"+dt.Hour.ToString());
- }
- else
- {
- _InsStrValues.Append(",'" + cf.Field + "'");
- }
- }
- }
- i++;
- }
- _InsStr.AppendFormat("{0} ({1}) values ({2}) ", _InsStrIns, _InsStrFields, _InsStrValues);
- return _InsStr.ToString();
- }
- catch (System.Exception e)
- {
- // log to log
- throw e;
- }
- }
-
- public override string BuildUpdateCom()
- {
- System.Text.StringBuilder _strUpdate = new StringBuilder();
- System.Text.StringBuilder _strWhere = new StringBuilder();
- System.Text.StringBuilder _strFieldValue = new StringBuilder();
- SortedDictionary<string, object> ht = ReaderAutoMapper();
- if (ht == null)
- {
- return null;
- }
- ht.Remove(this.GetGuid()); // 去掉自增字段的信息
- int i = 0;
- _strWhere.Append(this.GetGuid() + "= " + Globals.GetPropertyValue(this.Entitys, this.GetGuid()) + " ");
- IDictionaryEnumerator myEnumerator = ht.GetEnumerator();
- try
- {
- while (myEnumerator.MoveNext())
- {
- if (i == 0)
- {
- _strFieldValue.Append("[" + myEnumerator.Key.ToString() + "]");
-
- }
- else
- {
- _strFieldValue.Append(",[" + myEnumerator.Key.ToString() + "]");
- //_strFieldValue.Append("='" + myEnumerator.Value+"'");
- }
- if (myEnumerator.Value == null)
- {
- _strFieldValue.Append(" = null");
- }
- else
- {
- _strFieldValue.Append(" = '" + myEnumerator.Value + "'");
- }
- i++;
- }
- _strUpdate.AppendFormat("update {0} Set {1} where {2}", this.GetTableName(), _strFieldValue, _strWhere);
- return _strUpdate.ToString();
- }
- catch (System.Exception e)
- {
-
- throw e;
- }
- }
- /// <summary>
- /// 更新语句 //add sundexiang
- /// </summary>
- /// <param name="FieldValue">更新的Colums</param>
- /// <param name="condition">更新的条件</param>
- /// <returns></returns>
- public override string BuildUpdateCom(string FieldValue, string condition)
- {
- System.Text.StringBuilder _strUpdate = new StringBuilder();
-
- try
- {
-
- _strUpdate.AppendFormat("update [{0}] Set {1} where {2}", this.GetTableName(), FieldValue, condition);
- return _strUpdate.ToString();
- }
- catch (System.Exception e)
- {
-
- throw e;
- }
- }
- //public string
-
- public override string BuildDeleteCom()
- {
- System.Text.StringBuilder _strDelete = new StringBuilder();
- _strDelete.Append("delete from ");
- _strDelete.Append(this.GetTableName());
- _strDelete.Append(" where ");
- _strDelete.Append(this.GetGuid());
- _strDelete.Append(" = '");
- _strDelete.Append(Globals.GetPropertyValue(this.Entitys, this.GetGuid()));
- _strDelete.Append("'");
- return _strDelete.ToString();
- }
-
- public override string BuildDeleteCom(string condition)
- {
- System.Text.StringBuilder _strDelete = new StringBuilder();
- _strDelete.Append("delete from ");
- _strDelete.Append(this.GetTableName());
- _strDelete.Append(" where ");
- _strDelete.Append(condition);
- return _strDelete.ToString();
- }
-
-
-
-
- public override string SelectCommand(IList list)
- {
- StringBuilder _SelStr = new StringBuilder(this.SelectAllCommand());
- if (list == null)
- {
- return _SelStr.ToString();
- }
- IEnumerator myEnumerator = list.GetEnumerator();
- try
- {
- while (myEnumerator.MoveNext())
- {
- myEnumerator.Current.ToString();
- }
- return _SelStr.ToString(); ;
- }
- catch (System.Exception e)
- {
- throw e;
- }
- }
-
-
- public override string SelectCommand(string id)
- {
- System.Text.StringBuilder sb = new StringBuilder("");
- string _strSel = base.SelectAllCommand();
- sb.Append(_strSel + " ");
- sb.Append(" where ");
- sb.Append(this.GetGuid());
- sb.Append("=");
- sb.Append(id);
- return sb.ToString();
- }
- }
- }