如何使用sqlite3和Python

如何使用sqlite3和Python,python,sqlite,python-2.7,Python,Sqlite,Python 2.7,我在寻找任何使用Python的数据库解决方案。找到了教程。在那里,我发现了一个代码示例,它显示了如何创建数据库并插入一些数据: import sqlite3 conn = sqlite3.connect("mydatabase.db") # or use :memory: to put it in RAM cursor = conn.cursor() # create a table cursor.execute("""CREATE TABLE albums

我在寻找任何使用Python的数据库解决方案。找到了教程。在那里,我发现了一个代码示例,它显示了如何创建数据库并插入一些数据:

import sqlite3

conn = sqlite3.connect("mydatabase.db") # or use :memory: to put it in RAM

cursor = conn.cursor()

# create a table
cursor.execute("""CREATE TABLE albums
                  (title text, artist text, release_date text, 
                   publisher text, media_type text) 
               """)
我对
sqlite3
完全陌生

  • 如果我想使用
    sqlite3
    我需要安装任何特定的Python模块吗
  • 在上面的代码中,我可以看到一个名为
    mydatabase.db
    的数据库。如何创建该数据库
如果有人能帮我消除这些困惑,我可以给这些新模块一个良好的开端

感谢您使用sqlite3不需要(安装)任何其他Python模块

如果数据库不存在,通常会在与脚本相同的目录中自动创建数据库

运行脚本时,我得到以下信息:-

$ ls *.db
ls: *.db: No such file or directory

$ python test.py

$ ls *.db
mydatabase.db

$ sqlite3 mydatabase.db 
SQLite version 3.7.7 2011-06-25 16:35:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> select * from sqlite_master;
table|albums|albums|2|CREATE TABLE albums
             (title text, artist text, release_date text, 
              publisher text, media_type text)
sqlite> 

如参考教程所示。“Python在2.5版中获得了sqlite3模块,这意味着您可以使用任何当前Python创建SQLite数据库,而无需下载任何其他依赖项。”文档可在

我正在搜索这个问题,因为我正在完成setup.py的“install\u requires”部分,并希望确保包含sqlite3

我注意到在Macports上,我需要显式安装sqlite3和py27 sqlite

测试您的版本的简单方法

>>> import sqlite3
>>> sqlite3.version
'2.6.0'
或者显示安装的任何版本,或者如果未安装,您将收到ImportError


通过快速搜索pysqlite,您可以找到sqlite旧版本的一些选项

不,您不需要安装任何其他模块,只需要安装python sqlite

在Ubuntu上运行
sudo-apt-get-install-python-sqlite

另外,当您在上面的代码中看到一个名为mydatabase.db的数据库时。这是用于存储数据的文件名。Sqlite仅以平面文件的形式存储数据。因此,这个文件(在本例中为“mydatabase.db”)将包含您的数据库模式和内容


由于没有给定的绝对路径,因此将在当前工作目录中创建该路径,即,脚本中的目录正在运行。

Sqlite3是Python常用的版本。如果您正在运行Windows,则需要下载sqlite。如果您使用的是Ubuntu或基于Debian的系统,那么它是预安装的

现在来看python,
sqlite3
是包名,它随python提供,如果您没有找到它,那么在Ubuntu系统上使用命令
apt get install python sqlite
安装它

考虑到您使用的是Ubuntu系统,只需键入
sqlite3test.db
即可创建数据库名test.db

至于你的节目:

import sqlite3 

conn = sqlite3.connect("test.db") # connect to test.db 
cursor = conn.cursor() # get a cursor to the sqlite database 
# cursor is the object here, you can use any name

# create a table
cursor.execute("""CREATE TABLE albums
                  (title text, artist text, release_date text, 
                   publisher text, media_type text)""")
# cursor.execute is used to execute any command to sqlite

我想介绍的其他几个函数是
data=cursor.fetchone()
获取一行,
data=cursor.fetchall()
一次获取多行并存储在元组数据中

我的第二个问题的答案是什么?您是否尝试过运行示例中的代码?发生了什么?仔细阅读教程。它说你给我们看的代码实际上会创建数据库!为什么不检查导入sqlite3以确定?
conn=sqlite3.connect(“mydatabase.db”)
创建一个名为
mydatabase.db
的数据库。现在我的问题是,如果需要,如何删除数据库。