django如何連接mysql數(shù)據(jù)庫(kù)-創(chuàng)新互聯(lián)

這篇文章主要為大家展示了“django如何連接mysql數(shù)據(jù)庫(kù)”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“django如何連接mysql數(shù)據(jù)庫(kù)”這篇文章吧。

成都創(chuàng)新互聯(lián),為您提供重慶網(wǎng)站建設(shè)公司、成都網(wǎng)站制作、網(wǎng)站營(yíng)銷推廣、網(wǎng)站開(kāi)發(fā)設(shè)計(jì),對(duì)服務(wù)食品包裝袋等多個(gè)行業(yè)擁有豐富的網(wǎng)站建設(shè)及推廣經(jīng)驗(yàn)。成都創(chuàng)新互聯(lián)網(wǎng)站建設(shè)公司成立于2013年,提供專業(yè)網(wǎng)站制作報(bào)價(jià)服務(wù),我們深知市場(chǎng)的競(jìng)爭(zhēng)激烈,認(rèn)真對(duì)待每位客戶,為客戶提供賞心悅目的作品。 與客戶共同發(fā)展進(jìn)步,是我們永遠(yuǎn)的責(zé)任!

具體如下:

django連接mysql數(shù)據(jù)庫(kù)需要在project同名的目錄下面的__init__.py里面加入下面的東西

import pymysql
pymysql.install_as_MySQLdb()

找到settIngs里面的database設(shè)置如下

DATABASES = {
  'default': {
    'ENGINE': 'django.db.backends.mysql',
    'NAME': 's22', #連接的庫(kù)名,這個(gè)要事先存在
    'HOST':"127.0.0.1",
    'PORT':3306,
    'USER':"root",
    'PASSWORD':"123", #這里要用引號(hào)
  }
}

下面是靜態(tài)文件路徑的修改

#靜態(tài)文件位置比如用來(lái)存放 bootstrap樣式,jquery-3.3.1.min.js
STATIC_URL = '/static/'
STATICFILES_DIRS=[
  os.path.join(BASE_DIR,"static"),
  os.path.join(BASE_DIR,"static99"),
]

然后創(chuàng)建一個(gè)應(yīng)用app01,在pycharm的terminal下面

我的project是test1

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

告訴django有哪些app,settIngs.py里面設(shè)置,加入到最后一行,注意:如果是在創(chuàng)建project的同時(shí)寫(xiě)了Application name,它會(huì)自動(dòng)加入到這里面

INSTALLED_APPS = [
  'django.contrib.admin',
  'django.contrib.auth',
  'django.contrib.contenttypes',
  'django.contrib.sessions',
  'django.contrib.messages',
  'django.contrib.staticfiles',
  'app01.apps.App01Config', #你在命令行創(chuàng)建app時(shí)要注意添加
]

在app01下的models.py中寫(xiě)類

它操作的對(duì)應(yīng)關(guān)系是:

ORM 對(duì)象關(guān)系映射
類        表
對(duì)象      記錄
屬性      字段

在app01的modles.py里面寫(xiě)入,創(chuàng)建類

from django.db import models
# Create your models here.
class Book(models.Model):
  # 定義一個(gè)自增的id主鍵
  id = models.AutoField(primary_key=True)
  # 定義一個(gè)大長(zhǎng)度為32的varchar字段
  title = models.CharField(max_length=32)

在terminal上面執(zhí)行下面兩條命令

python manage.py makemigrations #檢測(cè)app/models.py文件的改動(dòng)
python manage.py migrate     #把上面的改動(dòng)翻譯成sql語(yǔ)句,然后去數(shù)據(jù)庫(kù)中執(zhí)行

好了,我們登陸mysql查看結(jié)果

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)

如果要?jiǎng)h除app01_book表,modles.py里面的相關(guān)聯(lián)東西就可以了,之后執(zhí)行

models.py

#class Book(models.Model):
#   # 定義一個(gè)自增的id主鍵
#   id = models.AutoField(primary_key=True)
#   # 定義一個(gè)大長(zhǎng)度為32的varchar字段
#   title = models.CharField(max_length=32)

接著執(zhí)行

python manage.py makemigrations
python manage.py migrate

在 app01的migrations下面放的是改動(dòng)的記錄,不能登陸到數(shù)據(jù)庫(kù)上面直接操作,否則這些記錄會(huì)變亂

django如何連接mysql數(shù)據(jù)庫(kù)

如果想在pycharm里面直觀的操作如下圖

django如何連接mysql數(shù)據(jù)庫(kù)

1 點(diǎn)擊側(cè)欄的 database
2 點(diǎn)擊+ 選擇mysql
3 點(diǎn)擊download下載相關(guān)的驅(qū)動(dòng)
4 庫(kù)   5 用戶名    6 密碼      ---》點(diǎn)擊test connection測(cè)試數(shù)據(jù)庫(kù)的連通性

具體操作如下

django如何連接mysql數(shù)據(jù)庫(kù)

說(shuō)明:
1 點(diǎn)擊要操作的表
2 點(diǎn)擊+ 表示要加入記錄,- 表示刪除
3 點(diǎn)擊 ?同步道數(shù)據(jù)庫(kù)
4 刷新,查看新的記錄

總結(jié):diango操作mysql數(shù)據(jù)庫(kù)的準(zhǔn)備工作

1 用sql語(yǔ)句建個(gè)數(shù)據(jù)庫(kù),也就是命令登陸MySQL 使用create s22

2 告訴django去哪里連接數(shù)據(jù)庫(kù)   在settIngs.py中設(shè)置

3 告訴django使用pymysql連接MySQL數(shù)據(jù)庫(kù)  project/__init__.py

4 在app/models.py文件中,根據(jù)語(yǔ)法,創(chuàng)建類

5執(zhí)行兩個(gè)命令:makemigrations   migrate

以上是“django如何連接mysql數(shù)據(jù)庫(kù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

當(dāng)前標(biāo)題:django如何連接mysql數(shù)據(jù)庫(kù)-創(chuàng)新互聯(lián)
文章URL:http://muchs.cn/article8/egeip.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供域名注冊(cè)、標(biāo)簽優(yōu)化、靜態(tài)網(wǎng)站、網(wǎng)站內(nèi)鏈、網(wǎng)站制作定制網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名