[Django] Mac+python+Django实现对mysql数据库的增删改查

基本知识:
Django框架在用户浏览器完成一次对服务器的访问中Django在下图红圈内的起作用(注意区别javaweb里用户的request请求和Django里服务器给Django程序传入的request对象

ORM:Object Relational Mapping(关系对象映射)
ORM的核心思想:通过python的类操作数据库的表
对于应关系:

python类 数据库
类名对应 数据库中的表名
类属性对应 数据库表里的字段
类实例对应 数据库表里的一行数据

话不多说现在开始~👨‍💻‍

1️⃣第一步:修改项目目录下的 _ init _.py

import pymysql
pymysql.install_as_MySQLdb()

2️⃣第二步:修改settings.py中的“DATABASES”,配置数据库的连接环境

DATABASES = {

 'default': {

 'ENGINE': 'django.db.backends.mysql',

 'NAME':'DB1234',  #库名

 'USER':'root',

 'PASSWORD':'363316495',

 'HOST':'',

 'PORT':'3306'

 }

}

3️⃣第三步:在blog应用目录下的models.py中定义类进行表的创建

from django.db  import  models
class Student(models.Model):
 # 姓名
 name = models.CharField(max_length=30)

 # 学号(主键)
 no = models.CharField(max_length=30,primary_key=True)

4️⃣第四步:创建一个和setting.py的文件里同名的数据库然后在终端输入:

python manage.py makemigrations

相当于在该app下建立 migrations目录,并记录下你所有的关于modes.py的改动

python manage.py migrate

将该改动作用到数据库文件,比如产生table之类

Pycharm会自动创建以下两个文件:

5️⃣第五步:为了实现通过浏览器触发数据库的方法,在路径里面添加对blog应用的路径映射(若blog没有urls则新创一个)

urlpatterns = [

 url(r'^admin/', admin.site.urls),

 url(r"blog/", include("blog.urls")),

]

6️⃣第六步:在blog应用内映射触发视图函数

7️⃣第七步:解析从服务器传来的request对象,并且调用数据库插入函数

from django.http import HttpResponse

from . import models

# 第七步:解析从服务器传来的request对象,并且调用数据库插入函数

# 插入操作:
def insert1(request):
    models.Student.objects.create(name="topus3", no="003")
    models.Student.objects.create(name="topus4", no="004")
    models.Student.objects.create(name="topus5", no="005")
    return HttpResponse("insert")



# 查找操作:
def select1(request):
    # 查找所有
    stus = models.Student.objects.all()
    for stu in stus:
        print(stu.name,stu.no)

    # 查找某个,相当于sql语句中的where
    models.Student.objects.filter(no="003").values("name")
    return HttpResponse("select")



# 修改操作
def update1(request):
    models.Student.objects.filter(no="003").update(name="zyz")
    return HttpResponse("update")


# 删除操作
def delete1(request):
    models.Student.objects.filter(no="003").delete()
    return HttpResponse("delete")

8️⃣第八步:启动Django自带服务器

控制台输入:

python manage.py runserver 8000

【注】python manage.py runserver 8000

默认绑定 127.0.0.1 该IP地址

127.0.0.1 是个回环地址

9️⃣第九步:在浏览器依次输入(增删改查)

http://127.0.0.1:8000/blog/insert/
http://127.0.0.1:8000/blog/delete/
http://127.0.0.1:8000/blog/update/
http://127.0.0.1:8000/blog/select/

前端界面返回:


此时Terminal输出:


或者此时查看数据库:
打开终端:(mac)

/usr/local/MySQL/bin/mysql -u root -p这里填数据库密码

展示所有数据库:

mysql> show databases;

使用某个数据库:

use DB1234; //这里填你自己的数据库名

查看数据库中某个表结构:

describe student;

当然你也可以在workbench里查看到:


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章