gpt4 book ai didi

php - SQLSTATE[42000] : Syntax error or access violation: 1066

转载 作者:行者123 更新时间:2023-11-29 23:07:25 26 4
gpt4 key购买 nike

我正在使用 PHP Phalcon 和 Xampp 服务器工作。

我有模型的层次结构:

UsersAbstract is parent to UserOfficials, UserPatients.

UsersOfficial is parent to OfficialDoctor.

数据库中的表与上面的模型具有相同的名称,只不过名称采用驼峰式大小写,如 User_Officials 等。只是 UsersAbstract 表没有以驼峰命名法命名。原因是在这个项目开发初期,我遇到了一个错误,通过将名称更改为UsersAbstract而不是Users_Abstract来解决。

无论如何,现在我正在尝试运行代码,导致错误的代码片段在这里:

foreach ($available_users as $user)
{
$select_doctor = "Select "
."UserOfficials.Occupation,"
."UsersAbstract.Full_Name,"
."UserOfficials.Doc_ID "
."from UserOfficials join UsersAbstract "
."On UserOfficials.Unique_ID = UsersAbstract.Unique_ID"
." Where UserOfficials.Unique_ID = :uid:";

$doctor_details = $this->modelsManager->executeQuery($select_doctor, array("uid" => $user->Unique_ID));

if ($doctor_details->occupation == "Doctor")
$this->available_doctor = $doctor_details;
}

我正在尝试将医生从可用用户列表中分离出来。我收到的错误是这样的

SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias: 'usersabstract'

UserOfficials 和 UsersAbstract 表都有一个名为 Unique_ID 的列,用于将它们相互链接。

编辑:我添加了加入条件

[已解决]

UsersAbstract 类有一个函数“getSource()”。该函数在子类和孙类中没有重载。这就是在我的代码中观察到错误的原因。当我唯一地设置每个模型类的源时,问题就解决了。

最佳答案

尝试这个查询。

$select_doctor = "Select "
."UserOfficials.Occupation,"
."UsersAbstract.Full_Name,"
."UserOfficials.Doc_ID "
."from UserOfficials join UsersAbstract "
."ON (UserOfficials.Unique_ID = UsersAbstract.Unique_ID)"
."WHERE UserOfficials.Unique_ID = :uid: AND UsersAbstract.Unique_ID = :uid:";

关于php - SQLSTATE[42000] : Syntax error or access violation: 1066,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28235884/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com