public QueryBuilder GetSelectQuery()
 {
     Console.WriteLine("GetSelectQuery()");
     QueryBuilder query = new QueryBuilder();
     query.AddText("SELECT ");
     Field[] fields = this.GetAllFields();
     for (int i = 0; i < fields.Length; i++)
     {
         if (i > 0)
             query.AddText(",");
         query.AddColumn(fields[i].ColumnName);
     }
     query.AddText(" FROM ");
     query.AddTableName(this.GetTableName());
     return query;
 }
 public void Insert(int tranUserId)
 {
     DatabaseAccessLayer dataAccessLayer = GetDatabaseAccessLayer();
     QueryBuilder query = new QueryBuilder();
     query.AddText("INSERT INTO ");
     query.AddTableName(this.GetTableName());
     query.AddText("(");
     Field[] fields = null;
     if (this.GetPrimaryKey().IsAutoIncreement == false)
         fields = GetAllFields();
     else
         fields = GetFields();
     bool addComma = false;
     for (int i = 0; i < fields.Length; i++)
     {
         if (fields[i].Value != null)
         {
             if (addComma == true)
                 query.AddText(",");
             query.AddColumn(fields[i].ColumnName);
             addComma = true;
         }
     }
     if (this.HasAccessColumns() == true)
     {
         query.AddText(",");
         query.AddAccessColumns();
     }
     query.AddText(") VALUES (");
     addComma = false;
     for (int i = 0; i < fields.Length; i++)
     {
         if (fields[i].Value != null)
         {
             if (addComma == true)
                 query.AddText(",");
             query.AddParam(fields[i]);
             addComma = true;
         }
     }
     if (this.HasAccessColumns())
     {
         query.AddText(",");
         query.AddAccessParams(tranUserId);
     }
     query.AddText(")");
     if (this.GetPrimaryKey().IsAutoIncreement == false)
         dataAccessLayer.ExecuteUpdate(query);
     else
         this.GetPrimaryKey().Value = dataAccessLayer.ExecuteInsert(query);
 }
 public void Update(int tranUserId)
 {
     DatabaseAccessLayer dataAccessLayer = GetDatabaseAccessLayer();
     QueryBuilder query = new QueryBuilder();
     query.AddText("UPDATE ");
     query.AddTableName(this.GetTableName());
     query.AddText("SET ");
     Field[] fields = GetFields();
     for (int i = 0; i < fields.Length; i++)
     {
         if (i > 0) query.AddText(",");
         query.AddColumn(fields[i].ColumnName);
         query.AddText("=");
         query.AddParam(fields[i]);
     }
     if (this.HasAccessColumns() == true)
     {
         query.AddText(",");
         query.AddLastUpdate(tranUserId);
     }
     query.AddEqualsFilter(this.GetPrimaryKey());
     int rows = dataAccessLayer.ExecuteUpdate(query);
 }