sqlite3命令行工具在Ubuntu中不起作用

时间:2012-09-10 22:23:51

标签: python linux sqlite ubuntu

尝试在python中设置一些从本地sqlite db读取和写入的基本数据I / O脚本。我想使用命令行来验证我的脚本是否按预期工作,但是他们没有接受我正在创建的任何数据库或表。

我的第一个脚本将dict中的一些数据写入表中,第二个脚本读取并打印它。

写:

# first part of script creates a dict called 'totals'

import sqlite3 as lite

con = lite.connect('test.db')

with con:
    cur = con.cursor()

    cur.execute("DROP TABLE IF EXISTS testtbl")    

    cur.execute("CREATE TABLE testtbl(Date TEXT PRIMARY KEY, Count INT, AverageServerTime REAL, TotalServerTime REAL, AverageClientTime REAL, TotalClientTime REAL)")
    cur.execute('INSERT INTO testtbl VALUES("2012-09-08", %s, %s, %s, %s, %s)' % (float(totals['count()']), float(totals['serverTime/count()']), float(totals['serverTime']), float(totals['totalLoadTime/count()']), float(totals['totalLoadTime'])))

读:

import sqlite3 as lite

con = lite.connect('test.db')

with con:    

    cur = con.cursor()    
    cur.execute("SELECT * FROM testtbl")

    rows = cur.fetchall()

    for row in rows:
        print row

这些脚本是分开的,都可以正常工作。但是,如果我导航到命令行中的目录并激活sqlite3,则无法继续工作。我已经尝试过'.databases','。table','。schema'命令,无法让它响应这个特定的数据库。我可以在命令行中创建dbs并查看它们,但不能查看我的脚本创建的dbs。我如何链接这些?

运行股票Ubuntu 12.04,Python 2.7.3,SQLite 3.7.9。我也安装了libsqlite3-dev,但没有帮助。

1 个答案:

答案 0 :(得分:2)

您是否将DB文件名放在命令中?

$ sqlite3 test.db