zl程序教程

您现在的位置是:首页 >  后端

当前栏目

如何使用Python操作SQLite详解编程语言

PythonSQLite编程语言 使用 如何 详解 操作
2023-06-13 09:20:42 时间

如何使用Python操作SQLite详解编程语言


一.创建数据库及表

   首先,创建数据库,以及数据库中的表。在使用connect()连接数据库后,就可以通过定位指针cursor,来执行SQL命令:

   import itxm

   conn = itxm.connect( test.db )

   cur = conn.cursor()

   cur.execute( CREATE TABLE category

    (id int primary key, sort int, name text) )

   cur.execute( CREATE TABLE book

    (id int primary key,

    sort int,

    name text,

    price real,

    category int,

    FOREIGN KEY (category) REFERENCES category(id)) )

   conn.commit()

   conn.close()


二.插入数据

   import itxm

   conn = itxm.connect( test.db )

   cur  = conn.cursor()

   books = [(1, 1, Cook Recipe , 3.12, 1),

    (2, 3, Python Intro , 17.5, 2),

    (3, 2, OS Intro , 13.6, 2),

    ]

   cur.execute( INSERT INTO category VALUES (1, 1, kitchen ) )

   cur.execute( INSERT INTO category VALUES (?, ?, ?) , [(2, 2, computer )])

   cur.executemany( INSERT INTO book VALUES (?, ?, ?, ?, ?) , books)

   conn.commit()

   conn.close()

   SQL语句中的参数,使用”?”作为替代符号,并在后面的参数中给出具体值。这里不建议用Python的格式化字符串,如”%s”,因为这一用法容易受到SQL注入攻击。

   也可以用executemany()的方法来执行多次插入,增加多个记录。每个记录是表中的一个元素,如上面的books表中的元素。


三.查询

   import itxm

   conn = itxm.connect( test.db )

   cur = conn.cursor()

   cur.execute( SELECT name FROM category ORDER BY sort )

   print(cur.fetchone())

   print(cur.fetchone())

   cur.execute( SELECT * FROM book WHERE book.category=1 )

   print(cur.fetchall())

   for row in cur.execute( SELECT name, price FROM book ORDER BY sort ):

   print(row)


四.更新与删除

   可以更新某个记录,或者删除记录:

   conn = itxm.connect( test.db )

   cur = conn.cursor()

   cur.execute( UPDATE book SET price=? WHERE id=? ,(1000, 1))

   cur.execute( DELETE FROM book WHERE id=2 )

   conn.commit()

   conn.close()

   也可以直接删除整张表:

   cur.execute( DROP TABLE book )

   如果删除test.db,那么整个数据库会被删除。

如何使用Python操作SQLite详解编程语言

转载请注明来源网站:blog.ytso.com谢谢!

原创文章,作者:ItWorker,如若转载,请注明出处:https://blog.ytso.com/14622.html

cgopython