Exemple #1
0
 /**
  * 编译成SQL语句
  */
 protected function compile()
 {
     $parts = array();
     $parts['start'] = 'delete from';
     $parts[self::TABLE] = $this->renderTable();
     $parts[self::WHERE] = $this->renderWhere();
     $parts[self::LIMIT] = $this->renderLimit();
     $parts[self::ENDS] = $this->ends;
     $this->parts =& $parts;
     return parent::compile();
 }
Exemple #2
0
 /**
  * 编译成SQL语句
  */
 protected function compile()
 {
     $parts = array();
     $parts['start'] = 'select';
     $parts[self::COLUMNS] = $this->renderColumns();
     $parts['from'] = 'from';
     $parts[self::TABLE] = $this->renderTable();
     $parts[self::JOINS] = $this->renderJoin();
     $parts[self::INDEX] = $this->renderIndex();
     $parts[self::WHERE] = $this->renderWhere();
     $parts[self::UNION] = $this->renderUnion();
     //一下不能在union子句中出现
     $parts[self::ORDER] = $this->renderOrder();
     $parts[self::GROUP] = $this->renderGroup();
     $parts[self::LIMIT] = $this->renderLimit();
     $parts[self::OFFSET] = $this->renderOffset();
     $parts[self::FOR_UPDATE] = $this->renderForUpdate();
     $parts[self::ENDS] = $this->ends;
     $this->parts =& $parts;
     return parent::compile();
 }
Exemple #3
0
 /**
  * 编译成SQL语句
  */
 protected function compile()
 {
     if (!$this->duplicate) {
         $parts = array();
         $parts['start'] = 'insert into';
         $parts[self::TABLE] = $this->renderTable();
         $parts[self::FIELDS] = $this->renderFields();
         $parts['kvSep'] = 'values';
         $parts[self::VALUES] = $this->renderValues();
         $parts[self::ENDS] = $this->ends;
         $this->parts =& $parts;
         return parent::compile();
     } else {
         //Duplicate key update
         return $this->compileDupValues();
     }
 }
Exemple #4
0
 /**
  * 编译成SQL语句
  */
 protected function compile()
 {
     $parts = array();
     $parts['start'] = 'update';
     $parts[self::TABLE] = $this->renderTable();
     $parts['setSep'] = 'set';
     $parts[self::SETS] = $this->renderSets();
     $parts[self::WHERE] = $this->renderWhere();
     $parts[self::LIMIT] = $this->renderLimit();
     $parts[self::ENDS] = $this->ends;
     $this->parts =& $parts;
     return parent::compile();
 }