Как сделать запрос со встроенной процедурой и входным параметром?

Для выполнения запроса с встроенной процедурой и входным параметром в Yii, вам потребуется использовать класс CDbCommand вместе с методом bindParam() для привязки значения входного параметра.

Первым шагом является создание экземпляра класса CDbConnection, который будет представлять ваше подключение к базе данных. Вы можете настроить параметры подключения к вашей базе данных в файле конфигурации вашего Yii-приложения (protected/config/main.php), и затем использовать CDbConnection::createCommand() для создания экземпляра CDbCommand.

$db = Yii::app()->db; // получаем экземпляр CDbConnection

$command = $db->createCommand('CALL your_procedure_name(:param)'); 
// замените 'your_procedure_name' на имя вашей процедуры

$paramValue = 'your_param_value'; // замените 'your_param_value' на значение вашего входного параметра

$command->bindParam(':param', $paramValue, PDO::PARAM_STR);
// привязываем значение входного параметра к параметру :param в запросе

$result = $command->queryAll();
// выполнение запроса и сохранение результата в переменной $result

В примере выше мы используем метод CDbCommand::bindParam() для привязки значения входного параметра к нашему запросу. Значение входного параметра передается в метод вторым аргументом. В данном случае мы использовали значение 'your_param_value'. Замените его на нужное значение.

Затем, мы вызываем метод queryAll() для выполнения запроса и получения результата. Результат сохраняется в переменной $result.

Помимо метода queryAll(), у класса CDbCommand есть и другие методы для выполнения запросов и получения результатов, такие как queryRow(), queryScalar() и execute(). Вы можете использовать соответствующий метод в зависимости от ваших потребностей.

Таким образом, используя класс CDbCommand и метод bindParam(), вы можете легко выполнить запрос с встроенной процедурой и входным параметром в Yii.