Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
带有表别名的PHP LEAP ORM查询_Php_Kohana 3_Kohana Orm - Fatal编程技术网

带有表别名的PHP LEAP ORM查询

带有表别名的PHP LEAP ORM查询,php,kohana-3,kohana-orm,Php,Kohana 3,Kohana Orm,目前我正在使用LEAP ORM for kohana,并尝试创建一些sql查询。这些查询是针对oracle数据库的。我能够成功连接并查询此数据库。但是,当我尝试使用这些别名为表和引用列添加别名时,语法不起作用。下面是我目前拥有的 return $this->db->query("select HRB.PARENT_COMPANY FROM COMPANY_TABLE HRB INNER JOIN OTHER_TABLE BTR HRB.ID = BTR.WID W

目前我正在使用LEAP ORM for kohana,并尝试创建一些sql查询。这些查询是针对oracle数据库的。我能够成功连接并查询此数据库。但是,当我尝试使用这些别名为表和引用列添加别名时,语法不起作用。下面是我目前拥有的

     return $this->db->query("select HRB.PARENT_COMPANY 
FROM COMPANY_TABLE HRB 
INNER JOIN 
OTHER_TABLE BTR 
HRB.ID = BTR.WID 
WHERE HRB.NAME LIKE '".$VAL."%;");
它似乎不喜欢HRB

错误消息

ErrorException [ Warning ]: oci_execute(): ORA-00904: "GPR"."GIS_PROP_FCNB_1": invalid identifier
MODPATH\leap\classes\Base\DB\Oracle\DataReader\Standard.php [ 57 ]
52          throw new Throwable_SQL_Exception('Message: Failed to query SQL statement. Reason: :reason', array(':reason' => $reason));
53      }
54      if ( ! is_integer($mode)) {
55          $mode = 32;
56      }
57      if ( ! oci_execute($command, $mode)) {
58          $error = @oci_error($command);
59          $reason = (is_array($error) AND isset($error['message']))
60              ? $error['message']
61              : 'Unable to perform command.';
62          throw new Throwable_SQL_Exception('Message: Failed to query SQL statement. Reason: :reason', array(':reason' => $reason));
如果删除了表别名,将引发以下错误

ErrorException [ Warning ]: oci_execute(): ORA-00918: column ambiguously defined
表示DB_ORM中不支持表别名

试试这个:

return $this->db->query("select COMPANY_TABLE.PARENT_COMPANY 
FROM COMPANY_TABLE
INNER JOIN OTHER_TABLE COMPANY_TABLE.ID = OTHER_TABLE.WID 
WHERE OTHER_TABLE.NAME LIKE '".$VAL."%;");

它是否在没有表别名的情况下工作,即
公司\u表。父公司\u公司
?如果这是实际的SQL,那么您是;它应该是公司表格中的HRB
,我感谢您的帮助。但是这些表的别名是正确的。它可能不是PL/SQL。ORM通常不使用特定于供应商的语法。尝试
作为
变体。仍然是一个问题。早在我第一次使用ALIAS.Columnorm时,我使用的IDE就在抱怨。Columnorm不支持使用ALIAS。真的,你不应该需要它。事实上,这是行不通的,因为母公司在两个表中。如果没有别名,列将是不明确的。