Django框架下连接Mysql数据库

本文详细介绍了如何在Django项目中配置并连接MySQL数据库,包括修改settings.py文件以指定数据库参数,并提供了两种实用的数据库操作方法:利用models.py进行ORM操作及使用原生SQL语句。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、找到settings.py文件

2、添加如下代码:

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'DBName',#这里写你的数据库名
        'USER':'root',#这里写用户名
        'PASSWORD':'mima',#密码
        'HOST':'localhost',#数据库所在主机的ip,如果是本机就写localhost
        'PORT':'3306',#端口号,默认3306,
    }
}

3、在上面的基础上,下面介绍两种连接数据库的具体方法

(1)使用models.py连接:

第一步:根据已存在的数据库生成models.py文件。进入cmd命令窗口,然后cd到你的项目中manage.py文件所在目录下,如

然后输入python manage.py inspectdb,出现生成的代码,然后复制到models.py文件中即可。


第二步:具体链接代码:

首先要引入models.py文件中相应的class。

# 通过objects这个模型管理器的all()获得所以数据行,相当于select * from Tabel_Name
# list=detail_data.objects.all()

# filter相当于SQL中的where,可设置条件过滤结果
result1 = DetailData.objects.filter(ID=Oil_ID)
#获取分组
len=result1.__len__()
# 获取单个对象
# response3=detail_data.objects.get_queryset(ID='10051')

# 数据排序
# detail_data.objects.order_by('ID')

# 上面的方法可以连锁使用
# detail_data.objects.filter(ID='10051').order_by('ID')

# 获取想要的结果
for var in result1:
    temp1.append(float(var.SJ))
    temp2.append(float(var.YL))

(2)sql语句直接连接

首先引入pymysql库或者MySQLdb库。代码如下

db=pymysql.connect(Server_IP(数据库所在主机IP),Database_UserName(用户名),DataBase_UserPass(密码),DataBase_Name(数据库名))#获取链接
cursor = db.cursor()#获取游标
SqlStr = "select * from Table_Name"
results = cursor.fetchall()
global SJ1#全局变量
global YL1
for row in results:
    SJ1.append(row[0])
    YL1.append(row[1])

如果不是查询操作,则可以使用

cursor = db.cursor()
try:
    # 执行sql语句
    cursor.execute(Sql_Str)
    # 提交到数据库执行
    db.commit()
except:
    print("Error: unable to fecth data")


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值