Я работаю с базой данных, которая использует «Текст» в качестве имени столбца.
Согласно спискам ключевых слов Oracle и PHP , текст должен быть в порядке.
Однако
$selectStatement = @"SELECT customer_code, object_num, create_date, name, Text FROM obj_table ORDER BY create_date DESC FETCH NEXT :numRows rows only";
не будет работать.Это прекрасно работает, если я не выберу столбец Текст.
Я получаю следующую ошибку: Warning: oci_fetch_array(): ORA-24374: define not done before fetch or execute and fetch in C:\xampp\htdocs\compare\index.php on line 52
Я пытался экранировать текст, такой как 'Text'
или `Text`
, или \'Text\'
, или "Text"
, или использовать псевдоним, такой как
.
SELECT customer_code, object_num, create_date, name, t.Text FROM obj_table as 't' ORDER BY create_date DESC FETCH NEXT :numRows rows only;
Но, похоже, ничего не работает.Если я удаляю текст и добавляю другое имя столбца, он работает отлично.Поэтому я думаю, что должно быть что-то не так с ключевым словом «Текст»
Edit1: запрос отлично работает в SQL Oracle Developer.Только не через PHP / OCI