Python连接SQLite

简介: Python 连接 SQLite 记录自己学习Python的代码。每天进步一点点,目标距离缩小点。 #! /usr/bin/python3 #-*- coding: utf-8 -*- import sqlite3 # 在 磁盘上创建数据库 # with sqlite3.

Python 连接 SQLite

记录自己学习Python的代码。
每天进步一点点,目标距离缩小点。

#! /usr/bin/python3
#-*- coding: utf-8 -*-

import sqlite3
# 在 磁盘上创建数据库
# with sqlite3.connect('\\workspace\\PycharmProjects\\DB\\sqlite\\test1.db') as conn:
# 在内存中 创建数据库
# 可以通过使用with语句来省去显示的调用close方法关闭连接和游标
with sqlite3.connect(':memory:') as conn:
    # conn 数据库连接对象,并返回数据库连接
    print("Opened database successfully")
    # 创建游标
    c = conn.cursor()
    # 执行SQL语句
    c.execute('''CREATE TABLE COMPANY
           (ID INT PRIMARY KEY     NOT NULL,
           NAME           TEXT    NOT NULL,
           AGE            INT     NOT NULL,
           ADDRESS        CHAR(50),
           SALARY         REAL);''')
    print("Table created successfully")
    # 提交事务
    # conn.commit()

    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (1, 'Paul', 32, 'California', 20000.00 )")
    # sqlite3 提供两种占位符(? 和命名占位符)
    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (?, ?, ?, ?, ? )", (2, 'Allen', 25, 'Texas', 15000.00))
    # c.execute("INSEprint("Operation done successfully")RT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (2, 'Allen', 25, 'Texas', 15000.00 )")
    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (3, 'Teddy', 23, 'Norway', 20000.00 )")
    c.execute("INSERT INTO COMPANY (ID,NAME,AGE,ADDRESS,SALARY) VALUES (4, 'Mark', 25, 'Rich-Mond ', 65000.00 )")
    print("修改记录行数 :", conn.total_changes)
    # conn.commit()
    print("Records created successfully")


    cursor = c.execute("SELECT id, name, address, salary  from COMPANY")
    for row in cursor:
        # print("ID = ", row[0], ",NAME = ", row[1], ",ADDRESS = ", row[2], ",SALARY = ", row[3], "\n")
        print("ID = %s,NAME = %s,ADDRESS = %s,SALARY = %d\n" % (row[0], row[1], row[2], row[3]))

控制台输出:

Opened database successfully
Table created successfully
修改记录行数 : 4
Records created successfully
ID = 1,NAME = Paul,ADDRESS = California,SALARY = 20000

ID = 2,NAME = Allen,ADDRESS = Texas,SALARY = 15000

ID = 3,NAME = Teddy,ADDRESS = Norway,SALARY = 20000

ID = 4,NAME = Mark,ADDRESS = Rich-Mond ,SALARY = 65000

Process finished with exit code 0
相关文章
|
2月前
|
Python
利用Python生成字符串连接
利用Python生成字符串连接
24 0
|
27天前
|
网络协议 安全 Python
python中socket客户端关闭连接
【4月更文挑战第7天】本教程介绍了如何在TCP客户端中正确关闭连接。使用`close()`方法可关闭Socket连接并释放资源,示例代码显示了在正常和异常情况下关闭连接的方法。注意异常处理以确保在任何情况下都能关闭连接,并避免并发操作同一Socket,以保证连接的稳定和安全。掌握这些技巧对编写健壮的TCP客户端至关重要。
|
2月前
|
SQL 关系型数据库 MySQL
用 Python 连接数据库并进行查询。
【2月更文挑战第12天】【2月更文挑战第32篇】用 Python 连接数据库并进行查询。
|
4天前
|
SQL 关系型数据库 MySQL
使用Python的pymysql库连接MySQL,执行CRUD操作
使用Python的pymysql库连接MySQL,执行CRUD操作:安装pymysql,然后连接(host='localhost',user='root',password='yourpassword',database='yourdatabase'),创建游标。查询数据示例:`SELECT * FROM yourtable`;插入数据:`INSERT INTO yourtable...`;更新数据:`UPDATE yourtable SET...`;删除数据:`DELETE FROM yourtable WHERE...`。
10 0
|
4天前
|
API Python Windows
python连接chartgtp
【4月更文挑战第30天】使用Python连接ChartGPT API需安装`websocket-client`库,通过`websocket`导入并建立连接至"wss://api.chartgpt.com/v1/websocket"。订阅API如"AAPL",接收并打印响应,然后关闭连接。示例代码包括连接、订阅、接收和关闭步骤。
13 1
|
10天前
|
关系型数据库 MySQL 数据库
Python从入门到精通:2.3.1数据库操作与网络编程:使用Python连接和操作数据库
Python从入门到精通:2.3.1数据库操作与网络编程:使用Python连接和操作数据库
|
21天前
|
SQL 关系型数据库 数据库
Python中SQLite数据库操作详解:利用sqlite3模块
【4月更文挑战第13天】在Python编程中,SQLite数据库是一个轻量级的关系型数据库管理系统,它包含在一个单一的文件内,不需要一个单独的服务器进程或操作系统级别的配置。由于其简单易用和高效性,SQLite经常作为应用程序的本地数据库解决方案。Python的内置sqlite3模块提供了与SQLite数据库交互的接口,使得在Python中操作SQLite数据库变得非常容易。
|
26天前
|
关系型数据库 MySQL 数据库连接
Python+SQLite数据库实现服务端高并发写入
Python中使用SQLite内存模式实现高并发写入:创建内存数据库连接,建立表格,通过多线程并发写入数据。虽然能避免数据竞争,但由于SQLite内存模式采用锁机制,可能在高并发时引发性能瓶颈。若需更高性能,可选择MySQL或PostgreSQL。
33 0
|
28天前
|
网络协议 安全 Java
python中socket关闭连接和释放资源
【4月更文挑战第6天】本教程讲解了网络通信后如何正确关闭连接和释放资源,以保证程序稳定性、性能及避免资源泄露和安全问题。内容涵盖TCP、HTTP连接关闭,数据库连接释放,以及内存、文件句柄、线程等资源管理。建议使用异常处理、遵循编程语言最佳实践,并定期审查代码以优化资源管理。
|
29天前
|
网络协议 Python
python接受客户端连接
【4月更文挑战第5天】本教程详解服务器如何接受客户端连接。过程包括监听、调用`accept`函数、创建新套接字及处理连接。示例代码展示了Python使用socket库接受连接,服务器循环调用`accept`,建立连接后发送欢迎消息并接收数据。注意并发处理、错误处理和资源管理。学习后可应用于实际项目。