Используя официальный фьюжн столы php api и после документы, если я использую, например:
$fusionsql = "select ROWID, name, email from $docID WHERE ROWID > 1244";
он возвращает данные для просто ROWID 1244, но не более того. И если бы он собирался вернуть один ряд, я бы ожидал, что это будет ROWID 1245.
Другие заявления работают как ожидалось.
В качестве дополнительного бонуса я просто читаю начало работы с документами неверно или в таблице найдена ошибка, найденная поиском на странице «Вставка новой строки в таблицу»? Это говорит:
POST с определенным ROWID, где вы передаете данные для новой строки:
и приведенный пример кода:
INSERT INTO <table_id> (<column_name> {, <column_name>}*)
VALUES (<value> {, <value>}*)
Я думал, что ROWID был внутренне созданной вещью? Кроме того, вышеприведенное утверждение, похоже, на самом деле не имеет опции для ROWID.
РЕДАКТИРОВАТЬ: Обходной путь — открыть таблицу в браузере, затем вручную определить, на каком номере строки произошел сбой, путем перекрестной ссылки на другие данные, а затем использовать, например, OFFSET 350
в вашем запросе.
Очевидно, что это PITA, но это привело меня к чрезвычайной ситуации. Хотелось бы еще узнать, почему> не получается, хотя.
Благодарю.
В соответствии с документами API, на которые вы ссылаетесь, ROWID может использоваться только с предикатом равенства:
<row_condition> Используется в предложении WHERE. Синтаксис: ROWID =
‘<строка>’ROWID — использовать идентификатор строки, который вы получили из предыдущего SELECT или
ВСТАВИТЬ.
‘<строка>’- Текстовая строка в кавычках. Если строка содержит
символы кавычки, перед каждым символом кавычки ставится обратная косая черта (\).
ROWID генерируется изнутри и не имеет гарантированного значения или порядка. Это также единственный способ обновить или удалить существующую строку, отсюда и документация выше.
Других решений пока нет …