欧美free性护士vide0shd,老熟女,一区二区三区,久久久久夜夜夜精品国产,久久久久久综合网天天,欧美成人护士h版

首頁綜合 正文
目錄

柚子快報(bào)邀請碼778899分享:Django和Mysql數(shù)據(jù)庫

柚子快報(bào)邀請碼778899分享:Django和Mysql數(shù)據(jù)庫

http://yzkb.51969.com/

Django學(xué)習(xí)筆記

Django和Mysql數(shù)據(jù)庫

Django開發(fā)操作數(shù)據(jù)庫更簡單,內(nèi)部提供了ORM框架。

1)安裝mysqlclient

pip3 install mysqlclient

2)ORM

ORM可以幫助我們做兩件事:

1.創(chuàng)建、修改、修改數(shù)據(jù)庫中的表(不用寫sql語句)[不能創(chuàng)建數(shù)據(jù)庫]

2.操作表中的數(shù)據(jù)(不用寫sql語句)

3)創(chuàng)建數(shù)據(jù)庫

create database database_name;

4)配置Django連接數(shù)據(jù)庫

修改settings.py文件

DATABASES = {

'default': {

'ENGINE': 'django.db.backends.mysql', #數(shù)據(jù)庫類型

'NAME': 'helloWorld', #數(shù)據(jù)庫名稱

'USER': 'root', #數(shù)據(jù)庫用戶名

'PASSWORD': 'xxxx', #數(shù)據(jù)庫密碼

'HOST': 'xxx.xxx.xxx.xxx', #數(shù)據(jù)庫主機(jī)地址

'PORT': '33060', #數(shù)據(jù)庫端口號

}

}

5)在modeles.py中創(chuàng)建一個(gè)用于生成表的類

from django.db import models

# Create your models here.

class userInfo(models.Model): #這個(gè)類用于生成表

name = models.CharField(max_length=32) #定義name字段

password = models.CharField(max_length=16) #定義password字段

age = models.IntegerField() #定義age字段

"""

Django執(zhí)行上面這個(gè)類的時(shí)候,相當(dāng)于執(zhí)行了建表操作(新建的表名為“app名_類名”),相當(dāng)于以下代碼:

create table app1_userinfo(

id bigint auto_increment primary key,

name varchar(32),

password varchar(16),

age int

)

"""

6)創(chuàng)建表,將數(shù)據(jù)自帶表遷移到數(shù)據(jù)庫中

python manage.py makemigrations #生成遷移文件

python manage.py migrate #進(jìn)行遷移

遷移完后,在數(shù)據(jù)庫中應(yīng)該可以看到一些django的表

注意:

如果不執(zhí)行遷移,那么在使用的時(shí)候,有些數(shù)據(jù)需要存到自帶的表中,那么就會報(bào)錯(cuò)。

這樣就可以看到數(shù)據(jù)庫中已創(chuàng)建好了一張表

如果要刪除表,只需要把models.py中的類刪除,重新執(zhí)行表遷移就可以。

如果要修改表,只需要修改models.py中的類,重新執(zhí)行表遷移就可以。

注意:

在新建 的表中會自動增加一個(gè)ID字段,并且為auto_increment 和primary key

如果在表中增加了新字段,進(jìn)行遷移的時(shí)候會有兩個(gè)選項(xiàng):

選項(xiàng)1 :手動指定一個(gè)默認(rèn)值;

選項(xiàng)2:退出,可以在類中將將新增字段添加一個(gè)默認(rèn)值;

如:

six=models.CharField(max_length=4,defalut=l)

或者設(shè)置新增字段允許為空

six=models.CharField(max_length=4,null=True,blank=True)

1.13操作數(shù)據(jù)

1)新增記錄

from app1 import models #引入models模塊

models..objects.create(=,=.....)

#相當(dāng)于以下sql語句

#insert into (,...) values(,.....)

2)刪除記錄

models..objects.filter(條件).delete() #刪除滿足條件的數(shù)據(jù)

models..objects.all.delete() #刪除表中所有的數(shù)據(jù)

3)查詢數(shù)據(jù)

data_list1 = models..objects.all() #獲取表中的所有數(shù)據(jù)QuerySet類型

for row in data_list1: #遍歷所有數(shù)據(jù)

print(row.) #獲取指定字段的數(shù)據(jù)

data_list2 = models..objects.filter(條件) #獲取滿足指定條件的數(shù)據(jù)

4)修改數(shù)據(jù)

#修改所有記錄的指定字段值

models..objects.all().update(=)

#修改符合條件的記錄的指定字段值

models..objects.filter(條件).update(=)

柚子快報(bào)邀請碼778899分享:Django和Mysql數(shù)據(jù)庫

http://yzkb.51969.com/

好文鏈接

評論可見,查看隱藏內(nèi)容

本文內(nèi)容根據(jù)網(wǎng)絡(luò)資料整理,出于傳遞更多信息之目的,不代表金鑰匙跨境贊同其觀點(diǎn)和立場。

轉(zhuǎn)載請注明,如有侵權(quán),聯(lián)系刪除。

本文鏈接:http://gantiao.com.cn/post/19173197.html

發(fā)布評論

您暫未設(shè)置收款碼

請?jiān)谥黝}配置——文章設(shè)置里上傳

掃描二維碼手機(jī)訪問

文章目錄