Как получить нулевой столбец заполнения из MySQL через Python? - PullRequest
0 голосов
/ 04 ноября 2018

У меня есть таблица в MySQL, как показано ниже:

CREATE TABLE `province` (
  `pid` int(2) unsigned zerofill NOT NULL,
  `pname` varchar(255) CHARACTER SET utf8 COLLATE utf8_persian_ci DEFAULT NULL,
  `family` int(12) DEFAULT NULL,
  `population` int(11) DEFAULT NULL,
  `male` int(11) DEFAULT NULL,
  `female` int(11) DEFAULT NULL,
  PRIMARY KEY (`pid`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_persian_ci

обратите внимание, что первый столбец (pid) является нулевым столбцом заполнения и данные в таблице (провинция), как показано ниже:

=========================================
|pid|pname|family|population|male|female|
=========================================
|02 | 'A' |  12  |    20    |  8 |   5  |
=========================================
|03 | 'B' |  25  |    20    |  7 |   6  |
=========================================
|05 | 'c' |  34  |     5    |  7 |   9  |
=========================================

Я хочу получить столбец pid через python, поэтому мой код python:

import mysql.connector

if __name__ == '__main__':
    data = []
    res = []
    cnx = mysql.connector.connect(user='mehdi', password='mehdi', host='127.0.0.1', database='cra_db')
    cursor = cnx.cursor()
    qrystr = 'SELECT pid FROM province;'
    cursor.execute(qrystr)
    print(cursor.fetchall())
    cnx.close()     

но когда я запускаю этот код Python, возникает это исключение:

вернул результат с ошибкой Файл "C: \ Users \ M_Parastar \ Desktop \ New folder \ ttt.py", строка 11, в печать (cursor.fetchall ())


Есть ли у вас какие-либо идеи, как получить столбец нулевой заливки через Python ??

1 Ответ

0 голосов
/ 05 ноября 2018

Курсор возвращает итеративный объект python, замените «print (cursor.fetchall ())» на «для строк в курсоре: print (lines)». Посетите Справочник по Connector / Python API

...