Как исправить оператор выбора, не возвращающий значения из моего файла БД - PullRequest
0 голосов
/ 19 января 2019

Я потратил два дня, чтобы выяснить, что происходит с моим кодом. Я создал файл базы данных из моего кадра данных. Проблема в том, что когда я делаю оператор select, включающий оператор where с целочисленным столбцом, я получаю возвращаемые записи, но когда я использую строковый столбец, я не получаю никакого значения.

con = sqlite3.connect("sqladb.db")

select_str='''select * from sqladb  where age=40 limit 2;'''
results=con.execute(select_str)
for rec in results:
    print(rec)

Приведенный выше код возвращает записи .

select_str='''select * from sqladb  where sex='Male' limit 2;'''
results=con.execute(select_str)
for rec in results:
    print(rec)

Код выше возвращает значение None , пока есть записи. Пол столбца - это строка.

Я ожидаю вывод с записями в соответствии с моим утверждением.

Копировать из комментария:

CREATE TABLE "sqladb" ( "age" INTEGER, "workclass" TEXT, "fnlwgt" INTEGER, "education" TEXT, "education-num" INTEGER, "marital-status" TEXT, "occupation" TEXT, "relationship" TEXT, "race" TEXT, "sex" TEXT, "capital-gain" INTEGER, "capital-loss" INTEGER, "hours-per-week" INTEGER, "native-country" TEXT, "label" TEXT )

(39, ' State-gov', 77516, ' Bachelors', 13, ' Never-married', ' Adm-clerical', ' Not-in-family', ' White', ' Male', 2174, 0, 40, ' United-States', ' <=50K') 
(50, ' Self-emp-not-inc', 83311, ' Bachelors', 13, ' Married-civ-spouse', ' Exec-managerial', ' Husband', ' White', ' Male', 0, 0, 13, ' United-States', ' <=50K') 
(38, ' Private', 215646, ' HS-grad', 9, ' Divorced', ' Handlers-cleaners', ' Not-in-family', ' White', ' Male', 0, 0, 40, ' United-States', ' <=50K') 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...