How to retrieve table names in a mysql database with Python and MySQLdb?

前端 未结 4 1823
醉话见心
醉话见心 2021-02-06 23:29

I have an SQL database and am wondering what command you use to just get a list of the table names within that database.

4条回答
  •  Happy的楠姐
    2021-02-06 23:40

    To be a bit more complete:

    import MySQLdb
    
    connection = MySQLdb.connect(
                    host = 'localhost',
                    user = 'myself',
                    passwd = 'mysecret')  # create the connection
    
    cursor = connection.cursor()     # get the cursor
    
    
    cursor.execute("USE mydatabase") # select the database
    
    cursor.execute("SHOW TABLES")    # execute 'SHOW TABLES' (but data is not returned)
    

    now there are two options:

    tables = cursor.fetchall()       # return data from last query
    

    or iterate over the cursor:

     for (table_name,) in cursor:
            print(table_name)
    

提交回复
热议问题