Files
youlegames/codes/agent/game/api/lib/phprs/ezsql/rules/insert.php
2026-03-15 01:27:05 +08:00

42 lines
1.2 KiB
PHP

<?php
/**
* $Id: insert.php 131 2015-10-10 02:25:57Z yangmin.cao $
* @author caoym(caoyangmin@gmail.com)
*/
namespace phprs\ezsql\rules\insert;
use phprs\ezsql\rules\basic\BasicRule;
use phprs\ezsql\rules\basic\ExecRule;
use phprs\ezsql\impls\InsertImpl;
use phprs\ezsql\impls\ValuesImpl;
require_once dirname(__DIR__).'/impls.php';
require_once __DIR__.'/basic.php';
class InsertRule extends BasicRule
{
/**
*
* insertInto('table')->values([1,2]) => "INSERT INTO table VALUES(1,2)"
* @param string $table
* @return \phprs\ezsql\rules\insert\ValuesRule
*/
public function insertInto($table) {
InsertImpl::insertInto($this->context, $table);
return new ValuesRule($this->context);
}
}
class ValuesRule extends BasicRule
{
/**
*
* insertInto('table')->values([1,2]) => "INSERT INTO table VALUES(1,2)"
* insertInto('table')->values(['a'=>1, 'b'=>Sql::native('now()')]) => "INSERT INTO table(a,b) VALUES(1,now())"
* @param unknown $values
* @return \phprs\ezsql\rules\basic\ExecRule
*/
public function values($values) {
ValuesImpl::values($this->context, $values);
return new ExecRule($this->context);
}
}