, когда я пытаюсь вызвать любой запрос SQL, я получаю ту же ошибку на Oracle DB: PDOException: SQLSTATE [HY000]: Общая ошибка: 933 OCIStmtExecute: ORA-00933: SQL команда не завершена должным образом
Пример. Я пытаюсь вызвать метод следующим образом:
$sql = new sqlConnection();
$sql->select("select * from DB_NAME.TABLE_NAME;");
Мой PHP код:
class sqlConnection
{
private const SERVER = 'server.db.lan';
private const PORT = '1521';
private const DATABASE = '';
private const USER = 'USER';
private const PASS = '123456';
private const SERVICE_NAME = 'KADADEV';
private const SID = '';
function __construct(){
try {
$dbtns = "(DESCRIPTION = (ADDRESS = (PROTOCOL = TCP)(HOST = ".self::SERVER.")(PORT = ".self::PORT.")) (CONNECT_DATA = (SERVICE_NAME = ".self::SERVICE_NAME.") (SID = ".self::SERVICE_NAME.")))";
$this->dbh = new PDO("oci:dbname=" . $dbtns . ";charset=utf8", self::USER, self::PASS, array(
PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION,
PDO::ATTR_EMULATE_PREPARES => false,
PDO::ATTR_DEFAULT_FETCH_MODE => PDO::FETCH_ASSOC));
echo "Connected successfully";
} catch (PDOException $e) {
echo $e->getMessage();
}
}
private function select($sql) {
$sql_stmt = $this->dbh->prepare($sql);
$sql_stmt->execute();
$result = $sql_stmt->fetchAll(PDO::FETCH_ASSOC);
return $result;
}
...
Когда я пытаюсь запустить тот же оператор SQL на SQL Навигатор, он работает , Что я делаю не так?