python怎么创建数据库

舞夢輝影
发布: 2025-12-14 13:05:02
原创
746人浏览过
Python不直接创建数据库,而是通过驱动操作数据库系统;SQLite用connect()自动创建文件型数据库,MySQL/PostgreSQL需先运行服务再发指令建库,SQLAlchemy则通过ORM方式统一管理建库建表。

python怎么创建数据库

Python 本身不直接“创建数据库”,而是通过数据库驱动(如 sqlite3pymysqlpsycopg2 等)连接并操作数据库系统。最简单、无需额外安装服务的方式是使用 Python 自带的 SQLite —— 它把整个数据库存为一个文件,调用时自动创建。

用 sqlite3 创建数据库文件(最常用)

SQLite 是轻量级嵌入式数据库,适合本地开发、小项目或学习。只要导入 sqlite3 模块,调用 connect(),指定一个尚不存在的文件路径,就会自动创建该数据库文件。

  • 代码示例:
import sqlite3
<h1>连接(若 test.db 不存在,则自动创建)</h1><p>conn = sqlite3.connect('test.db')</p><h1>可选:创建一张表,验证数据库已就绪</h1><p>cursor = conn.cursor()
cursor.execute('CREATE TABLE IF NOT EXISTS users (id INTEGER PRIMARY KEY, name TEXT, age INTEGER)')
conn.commit()
conn.close()
登录后复制

执行后,当前目录下会出现 test.db 文件——这就是你的数据库。不需要启动任何服务,开箱即用。

立即学习Python免费学习笔记(深入)”;

连接 MySQL 或 PostgreSQL(需先装服务和驱动)

这类数据库需要你已安装并运行 MySQL 或 PostgreSQL 服务,再用 Python 驱动连接。它们不“创建文件”,而是向数据库服务器发送指令,由服务器在内部创建数据库(schema)。

极限网络办公Office Automation
极限网络办公Office Automation

专为中小型企业定制的网络办公软件,富有竞争力的十大特性: 1、独创 web服务器、数据库和应用程序全部自动傻瓜安装,建立企业信息中枢 只需3分钟。 2、客户机无需安装专用软件,使用浏览器即可实现全球办公。 3、集成Internet邮件管理组件,提供web方式的远程邮件服务。 4、集成语音会议组件,节省长途话费开支。 5、集成手机短信组件,重要信息可直接发送到员工手机。 6、集成网络硬

极限网络办公Office Automation 0
查看详情 极限网络办公Office Automation
  • MySQL 示例(需先 pip install pymysql):
import pymysql
<h1>先连到 MySQL 服务器(不指定具体库)</h1><p>conn = pymysql.connect(
host='localhost',
user='root',
password='your_password',
charset='utf8mb4'
)</p><p>cursor = conn.cursor()
cursor.execute("CREATE DATABASE IF NOT EXISTS myapp_db")
conn.close()
登录后复制
  • PostgreSQL 示例(需先 pip install psycopg2-binary):
import psycopg2
<p>conn = psycopg2.connect(
host='localhost',
user='postgres',
password='your_password',
database='postgres'  # 必须连到默认库(如 postgres)才能建新库
)
conn.autocommit = True  # 建库语句不能在事务中,需开启自动提交
cursor = conn.cursor()
cursor.execute("CREATE DATABASE myapp_db")
conn.close()
登录后复制

用 SQLAlchemy(ORM 方式,更规范)

如果你希望用面向对象方式管理数据库,推荐 SQLAlchemy。它支持多种数据库,建库逻辑类似上面,但更侧重“模型定义 + 表创建”。

  • SQLite(自动建库+建表):
from sqlalchemy import create_engine, Column, Integer, String
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import sessionmaker
<p>Base = declarative_base()</p><p>class User(Base):
<strong>tablename</strong> = 'users'
id = Column(Integer, primary_key=True)
name = Column(String(50))
age = Column(Integer)</p><h1>创建引擎(test.db 不存在则自动创建)</h1><p>engine = create_engine('sqlite:///test.db', echo=True)</p><h1>创建所有表(对应 Base 的子类)</h1><p>Base.metadata.create_all(engine)
登录后复制

这会生成 test.db 并建好 users 表,结构清晰,适合中大型项目。

基本上就这些。SQLite 适合起步,MySQL/PG 适合生产,SQLAlchemy 适合想写得更稳更可维护的人。选哪个,看你的场景和需求。

以上就是python怎么创建数据库的详细内容,更多请关注php中文网其它相关文章!

python速学教程(入门到精通)
python速学教程(入门到精通)

python怎么学习?python怎么入门?python在哪学?python怎么学才快?不用担心,这里为大家提供了python速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号