我使用python3.5并连接mysql来获取数据。而且我不知道如何在没有创建模型的情况下获取每一列的数据。

# encoding=utf-8
import mysql.connector

HOST = 'localhost'
PORT = 3306
USER_NAME = "root"
PASSWORD = "anywhere"
DB_NAME = "test"


def create_db_connection():
    try:
        conn = mysql.connector.connect(user=USER_NAME, password=PASSWORD, database=DB_NAME)
        return conn
    except mysql.connector.Error as e:
        print("Something went wrong: {}".format(e))


def find_all_user():
    sql = "select * from test_users"
    conn = create_db_connection()
    cursor = conn.cursor()
    try:
        cursor.execute(sql)
        return cursor.fetchall()
    except mysql.connector.Error as e:
        print("failed to find user by sql ={}, cause : {}".format(e.args[0], e.args[1]))


def main():
    user_list = find_all_user()
    print(user_list)
    for user in user_list:
        # how to get the data of user such as id, name ...
        print(user)


if __name__ == '__main__':
    main()


表test_users

create table test_users(
  id primary key AUTO_INCREMENT,
  name varchar(128) default null,
  -- and other columns ...
);


在主要方法中,如何获取列ID,名称的数据
我尝试使用user[0],这样可以得到iduser[1]可以得到name,但是如果您不知道表,则无法知道哪个索引。

那么还有其他获取数据的方法吗?

最佳答案

尝试:

for user in user_list:
        print(user["id"], user["name"])

关于mysql - 如何为每个从MySQL python3.5返回的数据,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39177141/

10-12 16:37
查看更多