python 3.7 配置mysql数据库
一. mysql驱动安装
    1.mysqlclient(推荐使用)
    2.pymysql
二.django操作数据库
    
  1.django配置连接数据库
    
      settings.py -->Database
        DATABASES = {
            'default': {
                'ENGINE': 'django.db.backends.mysql',
                'NAME': 'py_db',
                'USER': 'root',
                'PASSWORD': 'root',
                'HOST': '127.0.0.1',
                'PORT': '3308'
            }
        }
   2. 在django中操作数据库
      from django.db import 
    
      方式一:
          原生sql语句
      方式二:
          ORM模型
三.ORM 模型 :
    
    1.新建项目
    2.新建app
    3.主urls.py中引入include
        include('app.urls')
    4.app下新建urls.py
        from django.contrib import admin
        from django.urls import path
        from front import views
        app_name='front'
        urlpatterns = [
            path('',views.index,name='index')
            
        ]
    5.setting.py 中设置 数据库连接 INSTALLED_APPS 导入 app
   根据现有的数据库建立model
   python manage.py inspectdb 
   把模型文件导入到app中
   创建一个app
   django-admin.py startapp app
   python manage.py inspectdb > app/models.py 
    6.models.py 定义模型
        
       定义模型
            class Book(models.Model):
                id不设置的话会自动生成
                id = models.AutoField(prinary_key=True)
                name = models.CharField(max_length = 100,null = False)
                author = models.CharField(max_length = 100,null = False)
                price = models.FloatField(null = False,default=0)
                def __str__(self):
                    return '<Boook:({name},{author},{price})>'.format(name=self.name,author=self.author,price.self = price)
        将模型映射到数据库
            python manage.py makemigrations
            python manage.py migrate
注意:映射时可能出现的问题:
    django.db.utils.OperationalError: (1049, "Unknown database 'procrm'")
    未找到数据库,请先创建数据库:
      create database procrm;
四. ORM模型操作
    
            1.views 导入 模型
                from .models import 模型名称
                用法:
                    1.添加
                        xx = 模型(name='',。。。)
                        xx.save()
                    2.查询
                        根据主键查找
                            s = 模型.objects.get(pk=1) 获取单条数据(pk主键)
                        条件查询
                            s = 模型.object.filter(name = '')
                    3.删除
                        book = Book.objects.get(pk=1)
                        bpp.delete()    
                    4.修改
                        xx = 模型.objects.get(pk=1)
                        xx.字段 = 修改后的值
                        xx.save()
五.Django根据现有数据库,自动生成models模型文件
            Django引入外部数据库还是比较方便的,步骤如下 :
            创建一个项目,修改seting文件,在setting里面设置你要连接的数据库类型和连接名称,地址之类,和创建新项目的时候一致  
            运行下面代码可以自动生成models模型文件  
            Python manage.py inspectdb 
            这样就可以在控制台的命令行中看到数据库的模型文件了
            把模型文件导入到app中  
            创建一个app  
            django-admin.py startapp app 
            python manage.py inspectdb > app/models.py 
            ok模型文件已经生成好了。
            
 
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号