在Python中,我们可以使用各种库来导入数据库,以下是一些常见的数据库及其对应的Python库:
数据库类型 | Python库 |
SQLite | sqlite3 |
MySQL | mysqlconnectorpython |
PostgreSQL | psycopg2 |
MongoDB | pymongo |
MS SQL Server | pyodbc |
1. SQLite
SQLite是一个轻量级的磁盘文件数据库,不需要一个单独的服务器进程,它允许将整个数据库存储在一个文件中,非常适合小型项目和开发环境。
import sqlite3 连接到SQLite数据库 如果数据库不存在,会自动创建 conn = sqlite3.connect('example.db') 创建一个游标对象 cursor = conn.cursor() 执行SQL语句 cursor.execute('''CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)''') 提交事务 conn.commit() 关闭连接 conn.close()
2. MySQL
MySQL是一个关系型数据库管理系统,广泛应用于Web开发,要使用Python操作MySQL,需要安装mysqlconnectorpython
库。
import mysql.connector 连接到MySQL数据库 conn = mysql.connector.connect(user='username', password='password', host='localhost', database='test_db') 创建一个游标对象 cursor = conn.cursor() 执行SQL语句 cursor.execute('''CREATE TABLE IF NOT EXISTS users (id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255), age INT)''') 提交事务 conn.commit() 关闭连接 conn.close()
3. PostgreSQL
PostgreSQL是一个功能强大的开源对象关系型数据库系统,要使用Python操作PostgreSQL,需要安装psycopg2
库。
import psycopg2 连接到PostgreSQL数据库 conn = psycopg2.connect(database="test_db", user="username", password="password", host="localhost", port="5432") 创建一个游标对象 cursor = conn.cursor() 执行SQL语句 cursor.execute('''CREATE TABLE IF NOT EXISTS users (id SERIAL PRIMARY KEY, name VARCHAR(255), age INT)''') 提交事务 conn.commit() 关闭连接 conn.close()
4. MongoDB
MongoDB是一个非关系型数据库,适用于存储大量数据,要使用Python操作MongoDB,需要安装pymongo
库。
from pymongo import MongoClient 连接到MongoDB数据库 client = MongoClient('mongodb://localhost:27017/') 选择一个数据库 db = client['test_db'] 创建一个集合(类似于关系型数据库中的表) users = db['users'] 插入一条数据 users.insert_one({"name": "张三", "age": 30}) 关闭连接 client.close()
5. MS SQL Server
MS SQL Server是微软推出的的关系型数据库管理系统,要使用Python操作MS SQL Server,需要安装pyodbc
库。
import pyodbc 连接到MS SQL Server数据库 conn = pyodbc.connect('DRIVER={ODBC Driver 17 for SQL Server};SERVER=localhost;DATABASE=test_db;UID=username;PWD=password') 创建一个游标对象 cursor = conn.cursor() 执行SQL语句 cursor.execute('''CREATE TABLE IF NOT EXISTS users (id INT IDENTITY(1,1) PRIMARY KEY, name NVARCHAR(255), age INT)''') 提交事务 conn.commit() 关闭连接 conn.close()
原创文章,作者:未希,如若转载,请注明出处:https://www.kdun.com/ask/452696.html
本网站发布或转载的文章及图片均来自网络,其原创性以及文中表达的观点和判断不代表本网站。如有问题,请联系客服处理。
发表回复