Я столкнулся с этой проблемой, создав сценарий практики, чтобы научить себя некоторому Python и библиотеке mysql.connector. Когда я выполнить запрос с помощью одного столбца и напечатать значения, я получаю результаты, как:
('tech-pc-1',) #Python 3.4.3 (u'tech-pc-1',) #Python 2.7.6
Однако, когда я выполняю запрос с несколькими столбцами и напечатать значения, которые я получаю результаты, я хочу. tech-pc-1 jdoe
Я делаю это на сервере под управлением Ubuntu 14.04.Python MySql Select Single Column Возвращающиеся странные значения
from mysql.connector import (connection)
import datetime<br>
conn = connection.MySQLConnection(user='user',password='pass',host='host',database='db')
single_col_query = "select comp from logons where dt between %s and %s"
multi_col_query = "select comp,user from logons where dt between %s and %s"
end_dt = datetime.datetime.now()
begin_dt = datetime.datetime(end_dt.year, end_dt.month, 1, 0, 0, 0)
cursor = conn.cursor()
cursor.execute(single_col_query, (begin_dt, end_dt))
for(comp) in cursor:
print(comp) # ex. ('tech-pc-1',) or (u'tech-pc-1',)
cursor.execute(multi_col_query, (begin_dt, end_dt))
for(comp,user) in cursor:
print(comp, user) # ex. tech-pc-1 jdoe
cursor.close()
conn.close()
У меня есть несколько вопросов:
- Почему это происходит?
- Как исправить это?
Это выглядит очень нормально для меня? Я не уверен, что вы ожидаете увидеть. –