Обновление этого для чего-то более простого для регистратора (работает как для python 2, так и для 3). Вам не нужен модуль трассировки.
import logging
logger = logging.Logger('catch_all')
def catchEverythingInLog():
try:
... do something ...
except Exception as e:
logger.error(e, exc_info=True)
... exception handling ...
Теперь это старый способ (хотя все еще работает):
import sys, traceback
def catchEverything():
try:
... some operation(s) ...
except:
exc_type, exc_value, exc_traceback = sys.exc_info()
... exception handling ...
exc_value - это сообщение об ошибке.
Может быть, глупый вопрос. Но если вы используете предложение WHERE с LIKE, тогда поле Ключевое слово МОЖЕТ содержать только это ключевое слово во всем поле. Однако при вашем присоединении вы присоединяетесь как точное совпадение для того же поля.
Что я имею в виду, если у вас есть 2 поля ключевых слов, которые содержат комментарии, например, тогда почему они объединяются для точного соответствия? Если вы удалите предложение where, то вернете ли вы какие-либо результаты?
Название столбца keyword
является неоднозначным, поскольку оно появляется в обеих таблицах
Try:
SELECT *
FROM history_search
INNER JOIN history_subs
ON history_search.keyword = history_subs.keyword
WHERE history_search.keyword LIKE '%$keyword%' -- Added a table reference here