django连接mysql数据库及建表操作实例详解

本文实例讲述了django连接mysql数据库及建表操作。分享给大家供大家参考,具体如下:

django连接mysql数据库需要在project同名的目录下面的__init__.py里面加入下面的东西

import pymysql
pymysql.install_as_MySQLdb()

找到settIngs里面的database设置如下

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 's22', #连接的库名,这个要事先存在
    'HOST':"127.0.0.1",
    'PORT':3306,
    'USER':"root",
    'PASSWORD':"123", #这里要用引号
  }
}

下面是静态文件路径的修改

#静态文件位置比如用来存放 bootstrap样式,jquery-3.3.1.min.js
STATIC_URL = '/static/'
STATICFILES_DIRS=[
  os.path.join(BASE_DIR,"static"),
  os.path.join(BASE_DIR,"static99"),
]

然后创建一个应用app01,在pycharm的terminal下面

我的project是test1

G:\study\day18\test1> python manage.py startapp app01

告诉django有哪些app,settIngs.py里面设置,加入到最后一行,注意:如果是在创建project的同时写了Application name,它会自动加入到这里面

INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
  'app01.apps.App01Config', #你在命令行创建app时要注意添加
]

在app01下的models.py中写类

它操作的对应关系是:

ORM 对象关系映射
类        表
对象      记录
属性      字段

在app01的modles.py里面写入,创建类

from django.db import models
# Create your models here.
class Book(models.Model):
  # 定义一个自增的id主键
  id = models.AutoField(primary_key=True)
  # 定义一个最大长度为32的varchar字段
  title = models.CharField(max_length=32)

在terminal上面执行下面两条命令

python manage.py makemigrations #检测app/models.py文件的改动
python manage.py migrate     #把上面的改动翻译成sql语句,然后去数据库中执行

好了,我们登陆mysql查看结果

mysql> show tables;
+----------------------------+
| Tables_in_s22       |
+----------------------------+
| app01_book         |
| auth_group         |
| auth_group_permissions   |
| auth_permission      |
| auth_user         |
| auth_user_groups      |
| auth_user_user_permissions |
| django_admin_log      |
| django_content_type    |
| django_migrations     |
| django_session       |
+----------------------------+
11 rows in set (0.00 sec)

如果要删除app01_book表,modles.py里面的相关联东西就可以了,之后执行

models.py

#class Book(models.Model):
#   # 定义一个自增的id主键
#   id = models.AutoField(primary_key=True)
#   # 定义一个最大长度为32的varchar字段
#   title = models.CharField(max_length=32)

接着执行

python manage.py makemigrations
python manage.py migrate

在 app01的migrations下面放的是改动的记录,不能登陆到数据库上面直接操作,否则这些记录会变乱

如果想在pycharm里面直观的操作如下图

1 点击侧栏的 database
2 点击+ 选择mysql
3 点击download下载相关的驱动
4 库   5 用户名    6 密码      ---》点击test connection测试数据库的连通性

具体操作如下

说明:
1 点击要操作的表
2 点击+ 表示要加入记录,- 表示删除
3 点击 ⬆同步道数据库
4 刷新,查看新的记录

总结:diango操作mysql数据库的准备工作

1 用sql语句建个数据库,也就是命令登陆MySQL 使用create s22

2 告诉django去哪里连接数据库   在settIngs.py中设置

3 告诉django使用pymysql连接MySQL数据库  project/__init__.py

4 在app/models.py文件中,根据语法,创建类

5执行两个命令:makemigrations   migrate

希望本文所述对大家基于Django框架的Python程序设计有所帮助。

(0)

相关推荐

  • Python django使用多进程连接mysql错误的解决方法

    问题 mysql 查询出现错误 error: (2014, "Commands out of sync; you can't run this command now")1 查询 mysql文档中的解释 If you get Commands out of sync; you can't run this command now in your client code, you are calling client functions in the wrong order.   Thi

  • 图文详解Django使用Pycharm连接MySQL数据库

    在 Pycharm 的右上方找到 Database 点击 依次点击,选择 MySQL 数据库 点击 Download 下载驱动文件 下载完成后对数据库的相关信息进行填写 填写完成后点击"Test Connection",如果出现 Successful 就说明连接成功 然后点击"应用",再点击"确定" 左边这个窗口是写 SQL 语句的地方 例如查询 app01_admin 表 点击这个绿色三角形执行 如果要添加数据的话 点这个加号 填写内容,填写完

  • python Django连接MySQL数据库做增删改查

    1.下载安装MySQLdb类库http://www.djangoproject.com/r/python-mysql/2.修改settings.py 配置数据属性 复制代码 代码如下: DATABASES = {    'default': {        'ENGINE': 'django.db.backends.mysql', # Add 'postgresql_psycopg2', 'mysql', 'sqlite3' or 'oracle'.        'NAME': 'djang

  • Django2 连接MySQL及model测试实例分析

    本文实例讲述了Django2 连接MySQL及model测试.分享给大家供大家参考,具体如下: 参考:https://www.jb51.net/article/176066.htm 新建个应用 manage.py startapp webtest // 新建一个应用用来测试 然后再到该应用下的**init.py**插入代码(防止报错) import pymysql pymysql.install_as_MySQLdb() 然后再去setting.py配置下数据库连接 接着去models.py里添

  • Django读取Mysql数据并显示在前端的实例

    前言: 由于使用Django框架来做网站,需要动态显示数据库内的信息,所以读取数据库必须要做,写此博文来记录. 接下来分两步来做这个事,添加网页,读取数据库: 一.添加网页 首先按添加网页的步骤添加网页,我的网页名为table.html, app名为web: table.html放到相应目录下: forms.py文件提前写好: 修改views.py,做好视图 from django.shortcuts import render from web import forms def table(r

  • Django1.7+python 2.78+pycharm配置mysql数据库教程

    配置好virtualenv 和virtualenvwrapper后,使用pycharm创建新项目.之后要面临的问题就来了,之前一直使用的是sqlite作为开发数据库进行学习,按照之前看教程的原则,好像就是说开发环境要和生产环境尽量的一致,所以现在想尝试一下使用更有可能在生产环境部署的mysql数据库进行开发. 本觉得是一件应该很轻松的事情,没想到遇到了一些麻烦 根据一通百度,搜出来的方案大概有: MySQLdb mysql安装时候自带的connector pymysql MySQLdb 是dja

  • django连接mysql配置方法总结(推荐)

    最近在学习django,学到第五章模型时,需要连接数据库,然后,在这里分享一下方法. 起初是不知道怎样配置mysql数据库,但是还好,django的官网上面有相关的配置方法,下面就直接给分享一下. 这是settings文件里面的基础配置,使用的是sqlite,那我们需要连接其他数据库呢? DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'NAME': 'mydatabase', } } 下面是mysql的配置方

  • 使用Django连接Mysql数据库步骤

    链接mysql步骤 第一步:在终端下载pymysql文件–pip install pymysql 第二步:在gjango项目的__init__文件中添加代码 import pymysql pymysql .install_as_MySQLdb() 第三步:找到mysql的连接源,然后填信息,如果没有mysql驱动,需要下载MySQL驱动 mysql的配置:进入settings文件中找到DATABASES配置信息 DATABASES = { 'default': { 'ENGINE': 'djan

  • Django+mysql配置与简单操作数据库实例代码

     第一步:下载mysql驱动 cmd进入创建好的django项目目录:使用命令 pip install mysqlclient 等待安装成功! 第二步:在settings.py中配置mysql连接参数(没有mysql的先装mysql) DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': '数据库名(你得先在mysql中创建数据库)', 'USER':'mysql用户名(如root)', 'PASSWOR

  • django2.2版本连接mysql数据库的方法

    一.运行项目报错信息如下: File "/home/pyvip/.virtualenvs/myblog/lib/python3.6/site-packages/django/db/backends/mysql/base.py", line 36, in <module> raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version

随机推荐