Mysql
 sql >> база данни >  >> RDS >> Mysql

ZF2 дезинфекцира променливи за DB заявки

Можете да предавате параметри, когато изпълнявате..

 $statement = $this->getAdapter()->query("Select * from test WHERE id = ?");
 $result = $statement->execute(array(99));

 $resultSet = new ResultSet;
 $resultSet->initialize($result);

Можете също да ги предадете директно на метода на заявката

 $statement = $this->getAdapter()->query(
    "Select * from test WHERE id = ?", 
    array(99)
 );
 $result = $statement->execute();

 $resultSet = new ResultSet;
 $resultSet->initialize($result);

И двете ще произведат заявката "Изберете * от теста WHERE id ='99'"

Ако искате да използвате именувани параметри:

$statement = $this->getAdapter()->query("Select * from test WHERE id = :id");
$result = $statement->execute(array(
    ':id' => 99
));

$resultSet = new ResultSet;
$resultSet->initialize($result);

Ако искате да цитирате имената на вашите таблици/полета и т.н.:

$tablename = $adapter->platform->quoteIdentifier('tablename');

$statement = $this->getAdapter()->query("Select * from {$tablename} WHERE id = :id");
$result = $statement->execute(array(
    ':id' => 99
));



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Как правилно да индексирате таблица за свързване за връзка много към много в MySQL?

  2. сесията за влизане е унищожена след опресняване

  3. Преоформете таблицата в MySQL или R

  4. MYSQL - Подредете стойностите на времевата марка във възходящ ред, от най-новите към най-старите?

  5. Как да промените разрешението само за четене, за да зададете нова стойност на системната променлива на MySQL сървър