O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
O Guia Definitivo do Yii 1.1
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
Executan<strong>do</strong> Instruções SQL<br />
Uma vez que a conexão com o banco de da<strong>do</strong>s tenha si<strong>do</strong> estabelecida, coman<strong>do</strong>s SQL<br />
podem ser executa<strong>do</strong>s utilizan<strong>do</strong>-se a classe CDbCommand. Você pode criar uma<br />
instância de CDbCommand utilizan<strong>do</strong> o méto<strong>do</strong> CDbConnection::createCommand(), com<br />
a instrução SQL desejada:<br />
$connection=<strong>Yii</strong>::app()->db;<br />
// Aqui, estamos assumind que você configurou<br />
// um conexão com o banco de da<strong>do</strong>s<br />
// Caso contrario, você deverá cria-la explicitamente:<br />
// $connection=new CDbConnection($dsn,$username,$password);<br />
$command=$connection->createCommand($sql);<br />
// se necessário, a instrução SQL pode ser alterada da seguinte maneira:<br />
// $command->text=$newSQL;<br />
Uma instrução SQL pode ser executada via CDbCommand de duas maneiras:<br />
• execute(): executa uma instrução SQL que não retorna resulta<strong>do</strong>s, tal como INSERT,<br />
UPDATE e DELETE. Em caso de sucesso, retorna a quantidade de registros<br />
afeta<strong>do</strong>s pela consulta.<br />
• query(): executa uma instrução que retorna registros, tal como SELECT. Em caso de<br />
sucesso, retorna uma instância de CDbDataReader, que pode ser utilizada para<br />
acessar os registros encontra<strong>do</strong>s. Por conveniência, um conjunto de méto<strong>do</strong>s<br />
queryXXX() também está implementa<strong>do</strong>, e retornam diretamente o resulta<strong>do</strong> da<br />
consulta.<br />
Uma exceção será disparada caso ocorram erros durante a execução de instruções SQL.<br />
$rowCount=$command->execute();<br />
// executa uma consulta que não retorna resulta<strong>do</strong>s<br />
$dataReader=$command->query();<br />
// executa uma consulta SQL<br />
$rows=$command->queryAll();<br />
// consulta e retorna to<strong>do</strong>s os resulta<strong>do</strong>s encontra<strong>do</strong>s<br />
$row=$command->queryRow();<br />
// consulta e retorna apenas o primeiro registro <strong>do</strong> resulta<strong>do</strong><br />
$column=$command->queryColumn();<br />
// consulta e retorna a primeira coluna <strong>do</strong> resulta<strong>do</strong><br />
$value=$command->queryScalar();<br />
// consulta e retorna o primeiro campo <strong>do</strong> primeiro registro<br />
Obten<strong>do</strong> Resulta<strong>do</strong>s de Consultas