翼度科技»论坛 编程开发 python 查看内容

python web应用程序之Django数据库详解

4

主题

4

帖子

12

积分

新手上路

Rank: 1

积分
12
python-web应用程序-Django数据库-操作表

原始方法:
  1. import pymysql
  2. #1.链接mysql
  3. conn = pymysql.connect(host='127.0.0.1',port = 2206,user = 'root',passwd = 'root123',charset = 'utf8',db = 'unicom')
  4. cursor = conn.cursor(cursor = pymysql.cursors.DictCursor)
  5. #2.发送指令
  6. cursor.execute('insert into admin(username,password,mobile)values('yulin','123456','13888888888')')
  7. conn.commit()
  8. #3.关闭
  9. cursor.close()
  10. conn.close()
复制代码

  • 游标(Cursor)对象是数据库编程中的一个重要概念。它提供了一种从数据库结果集中逐行读取数据的方法。游标就像数据库服务器和应用程序之间的桥梁,允许应用程序执行SQL语句并处理返回的结果集。
游标的主要作用包括:

  • 执行SQL语句:通过游标执行SQL查询、插入、更新和删除操作。
  • 检索结果集:在SELECT查询后,通过游标逐行提取结果。
  • 管理事务:游标通常用于事务管理,如提交或回滚事务。

Django开发操作数据库

内部提供了ORM框架
原始方法是写代码,使用pymysql使用数据库
Django的ORM框架则集成了pymysql或mysqlclient或MysqlDB,在其之上写代码,将会更加简洁
安装mysqlclinet
  1. pip install mysqlclient
复制代码
使用ORM
创建、修改、删除数据库中的表(不用你写SQL语句),但无法创建数据库
1.启动mysql服务
2.创建新的数据库pymysql
3.Django链接数据库-settings.py中修改配置
  1. DATABASES = {
  2.     'default': {
  3.         'ENGINE': 'django.db.backends.sqlite3',
  4.         'NAME': BASE_DIR / 'db.sqlite3',
  5.     }
  6. }
复制代码
上述链接的是sqlite3 还可以链接mysql如下:
  1. DATABASES = {
  2.     'default': {
  3.         'ENGINE': 'django.db.backends.mysql',
  4.         'NAME': 'pymysql',#数据库名字
  5.         'USER':'root',#数据库user
  6.         'PASSWORD':'123456',#数据库密码
  7.         'HOST':'127.0.0.1',#本地服务器可以是远程数据库
  8.         'PORT':'3306'#数据库端口号
  9.     }
  10. }
复制代码
甚至可以链接postgresql、oracle等数据库
操作表(写在models.py文件中)

创建表

1.需要根据数据库来添加类与表结构对应
在models.py:
  1. from django.db import models
  2. # Create your models here.
  3. class UserInfo(models.Model):
  4.     name = models.CharField(max_length=10)
  5.     password = models.CharField(max_length = 40)
  6.     age = models.IntegerField(max_length = 3)
复制代码
2.在命令行执行下列命令后会Django会根据类自动创建表
  1. python manage.py makemigrations
  2. python manage.py migrate
复制代码

注意,如果创建了一个表后还需要增加字段,需要给默认值(最好给NULL)。
  1. name = models.CharField(null = True,blank = True)
复制代码
  1. name = models.CharField(null = True,blank = True)
复制代码
到此这篇关于python web应用程序之Django数据库详解的文章就介绍到这了,更多相关python Django数据库内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

来源:https://www.jb51.net/python/3222038eo.htm
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作!

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x

举报 回复 使用道具