在python脚本中执行mysql命令

时间:2016-04-06 02:57:09

标签: python mysql sqlite

是否可以在python脚本中执行下面的mysql命令?

的MySQL>显示数据库;

的MySQL> show tables;

例如,在python脚本中执行sql查询可以通过以下方式完成:

var i = 1000;

(function ping() {
  $.ajax({
    type: "POST",
    url: "ping.php"
  }).done(function() {
    i = 1000;
    window.setTimeout(ping, i);
  }).fail(function() {
    i = i * 2;

    if (i > 60000) {
      // We don't wait to wait longer than a minute
      i = 60000;
    }

    window.setTimeout(ping, i);
  });
}());

如何写这个来执行mysql命令?

动机是使用" show tables"比编写一个sql语句更快地显示数据库中的所有表名。

2 个答案:

答案 0 :(得分:0)

import sqlite3 as lite
import sys

con = None


con = lite.connect('dbname')

cur = con.cursor()    
cur.execute('select * from table')

rows = cur.fetchall()

for row in rows:
   print row

答案 1 :(得分:0)

SQLite库被设计为嵌入式数据库,因此它不会实现对应用程序无用的命令。

.tables命令,但它由sqlite3 command-line shell实现,而不是由SQLite本身实现,所以它不能通过Python实现。您必须使用内置机制,例如PRAGMA database_listSELECT name FROM sqlite_master WHERE type = 'table';