1
我製作了一個名爲「Customer」的表格,我想製作一個簡單的Yii創建和查看應用程序。下面是CustomerController.php一塊我的代碼:如何解決Yii中的錯誤CDbException?
class CustomerController extends Controller
{
public $layout = '//layouts/column2';
public function actionCreate()
{
$model = new Customer();
$this->redirect(array('view', 'id' => $model->id));
$this->render('create', array(
'model' => $model,
));
}
public function actionView()
{
$model = new Customer();
$result = $model->viewCustomer();
foreach ($result as $row) {
echo $row["title"];
echo $row["fname"];
echo $row["lname"];
echo $row["addressline"];
echo $row["town"];
echo $row["zipcode"];
echo $row["phone"];
}
$this->render('view', array(
'model' => $this->$model(),
));
}
}
,這裏是我的一個名爲Customer.php
public function createCustomer()
{
$connection = Yii::app()->db;
$sql = "INSERT INTO Customer (title,fname,lname,addressline,town,zipcode,phone)VALUES(:title,:fname,:lname,:addressline,:town,:zipcode,:phone)";
$command = $connection->createCommand($sql);
$command->bindParam(":title", $title, PDO::PARAM_STR);
$command->bindParam(":fname", $fname, PDO::PARAM_STR);
$command->bindParam(":lname", $lname, PDO::PARAM_STR);
$command->bindParam(":addressline", $addressline, PDO::PARAM_STR);
$command->bindParam(":town", $town, PDO::PARAM_STR);
$command->bindParam(":zipcode", $zipcode, PDO::PARAM_STR);
$command->bindParam(":phone", $phone, PDO::PARAM_STR);
$result = $command->execute();
if ($result == 1) {
return "ok";
}
public function viewCustomer()
{
$connection = Yii::app()->db;
$sql = "Select * from Customer";
$dataReader = $connection->createCommand($sql)->query();
$dataReader->bindColumn(1, $title);
$dataReader->bindColumn(2, $fname);
$dataReader->bindColumn(3, $lname);
$dataReader->bindColumn(4, $addressline);
$dataReader->bindColumn(5, $town);
$dataReader->bindColumn(6, $zipcode);
$dataReader->bindColumn(7, $phone);
$result = $dataReader->queryAll();
return $result;
}
}
模型的代碼,但,我總是有這樣那樣的錯誤:
CDbException CDbCommand未能執行SQL語句:CDbCommand未能準備SQL語句:SQLSTATE [HY000]:一般錯誤:1沒有這樣的表:Customer。執行的SQL語句是:從客戶選擇*。
我的朋友說我沒有得到價值。我該如何解決這個問題?請幫助我們。先謝謝你。順便說一下,我正在使用PDO。
你確定你的表名是** Customer **或** customer **。大寫小寫 – SuVeRa