Редактировать страницу
Внимание! Вы не авторизовались на сайте. Ваш IP-адрес будет публично видимым, если вы будете вносить любые правки. Если вы войдёте или создадите учётную запись, правки вместо этого будут связаны с вашим именем пользователя, а также у вас появятся другие преимущества.
Правка может быть отменена. Пожалуйста, просмотрите сравнение версий, чтобы убедиться, что это именно те изменения, которые вас интересуют, и нажмите «Записать страницу», чтобы ваша отмена правки была сохранена.
Текущая версия | Ваш текст | ||
Строка 82: | Строка 82: | ||
search_param = 'item_name_exact' |
search_param = 'item_name_exact' |
||
else |
else |
||
− | --[[ |
||
− | Cargo's implementation of HOLDS breaks when there is a properly |
||
− | escaped quotation mark at the end of a string literal. |
||
− | |||
− | Example of a WHERE clause that results in an error: |
||
− | items.name_list HOLDS "\"O\' Eternal\"" |
||
− | |||
− | Instead, we avoid using HOLDS by explicitly joining the child table |
||
− | and then comparing using a native operator. |
||
− | --]] |
||
− | tables[#tables+1] = 'items__name_list' |
||
− | query.join = query.join .. ', items._ID = items__name_list._rowID' |
||
query.where = query.where .. string.format( |
query.where = query.where .. string.format( |
||
− | ' AND |
+ | ' AND items.name_list HOLDS "%s"', |
m_cargo.addslashes(args.item_name) |
m_cargo.addslashes(args.item_name) |
||
) |
) |