在不指定 database/schema 的情况下连接到 django mysql
Connecting to django mysql without specifying database/schema
一般情况下,你运行 mysql -h 如果你能以当前用户连接到db,你就在。那么你就可以select数据库和其他操作。
现在我们转到 django 上下文。
我们执行 connection.cursor() 但它默认为您在设置中指定的数据库。它可能会或可能尚未创建。但是你知道数据库在那里,你想执行一些检查等等。
怎么做?
我深入研究了 Django,实际上找到了解决方案:
with connection._nodb_connection.cursor() as cursor:
cursor.execute("SHOW tables;")
rows = cursor.fetchall()
给你!
一般情况下,你运行 mysql -h 如果你能以当前用户连接到db,你就在。那么你就可以select数据库和其他操作。
现在我们转到 django 上下文。
我们执行 connection.cursor() 但它默认为您在设置中指定的数据库。它可能会或可能尚未创建。但是你知道数据库在那里,你想执行一些检查等等。
怎么做?
我深入研究了 Django,实际上找到了解决方案:
with connection._nodb_connection.cursor() as cursor:
cursor.execute("SHOW tables;")
rows = cursor.fetchall()
给你!