Django项目之mysql数据库连接和表的创建

news/2024/10/31 6:19:11/

数据库连接

  1. 首先,确保我们已经生成了一个基本的Django项目文件,目录结构如下:
    在这里插入图片描述
    具体搭建流程参考链接:https://blog.csdn.net/David_house/article/details/131188889?spm=1001.2014.3001.5502
  2. 找到项目下的settings文件,打开,修改相关内容
  • 添加应用名称(我这里的应用名称为app,我在最后一行加入了app)
INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','app'
]
  • 修改数据库连接信息
    我这里用的是mysql数据库, 'NAME’后面是你要用的数据库名称
DATABASES = {'default':{'ENGINE': 'django.db.backends.mysql','NAME': 'dfds','HOST':'127.0.0.1','PORT':3306,'USER':'root','PASSWORD':'123456'}
}
  1. 打开app目录下的init文件,注意不是migrations里面的init文件,添加如下内容:
import pymysql
pymysql.install_as_MySQLdb()

表的创建

  1. 打开models.py文件,添加你要创建的表的信息,比如,我这里要创建三张表,具体内容如下:
# Create your models here.
class Users(models.Model):#前面的变量名会默认生成为表中的列名,如果想单独设置可以通过属性db_column=''#当使用CharField时,一定要通过max_length来设置一下最大长度id=models.AutoField('用户id',primary_key=True)  #primary_key为True时表示该列是主键email=models.CharField('用户邮箱',max_length=50,null=False) #null=False表示不为空password = models.CharField('用户登录密码',max_length=8,null=False)class Meta:db_table='user'  #设置对应的表名class Test(models.Model):sample_id = models.AutoField('数据唯一标识符', primary_key=True)classification = models.IntegerField('分类类别', null=False)features = models.CharField('特征',max_length=1000)#ForeignKey来指定外键,第一个参数是关联的表,第二个参数是表连接的方式u_id = models.ForeignKey(Users, on_delete=models.CASCADE)class Meta:db_table = 'test'class getModel(models.Model):m_id = models.AutoField('模型的唯一标识符', primary_key=True)model = models.CharField('模型文件保存路径',max_length=1000, null=False)sample_id = models.ForeignKey(Test,on_delete=models.CASCADE)class Meta:db_table = 'model'
  1. 打开终端,进入到 manage.py文件所在的目录下
    执行命令python manage.py makemigrations,生成对应模型,执行结果如下:

在这里插入图片描述
3. 执行命令 python manage.py migrate,生成对应的数据表,执行结果如下:
在这里插入图片描述
(这里截图有点问题,但是出现ok就是没问题的意思)
最后,我们去数据库里查看,发现表格自动生成了:
最后三个表是我们自己设计的,其他的是Django项目运行的时候自己需要的数据表
在这里插入图片描述


http://www.ppmy.cn/news/573849.html

相关文章

西电计算机学院软件学院,软件学院

2001年,学校响应国家培养软件人才,尽快提高我国软件产业的总体水平和国际竞争力的号召,以软件工程研究所为基础组建成立软件学院,并于当年获得教育部批准,成为首批建设的35所国家示范性软件学院之一。 西电软件学院以市…

2022CCF中国软件大会(CCF ChinaSoft)“系统软件教育”论坛成功召开

2022年11月27日,2022年度CCF中国软件大会系统软件教育论坛成功召开。本次论坛由中国科学技术大学张昱和清华大学陈渝两位老师联合组织举办,采用腾讯会议与在线直播两种方式线上进行。论坛围绕系统软件课程体系及操作系统课程的本科/研究生教学研究&#…

软件工程——软科中国大学专业排名

转载于 软科 高等教育专业评价机构软科正式发布2022“软科中国大学专业排名”。排名包括568个本科专业,每个专业榜单发布的是所有开设该专业的高校中排名位列前50%的高校,共有990所高校的30242个专业上榜。“软科中国大学专业排名”是迄今为止覆盖专业数…

软件工程之软件工程管理

科学管理之父-泰罗,说过这样一句话:管理就是确切地知道你要别人干什么,并使他用最好的方法去做。那么我们的软件工程管理又是怎么回事呢?让我们一起来揭晓她的答案,软件工程管理是指对工程建设的过程以及在建设过程中涉…

软件工程院校排名

1.上海交通大学 “软件科学理论”、“软件工程”、“系统软件”和“应用软件” 2.南京大学 软件工程技术、软件工程管理、信息系统工程、嵌入式软件、移动应用技术 3.北京大学 基于SOA的过程管理系统”(IBM中国研究中心)、Linux on Power Program&…

宫敏把自由软件和 Linux 带回中国

对于宫敏,在中国的开源界以及技术圈内,大家所熟知的是“中国 Linux 第一人”的称呼,因为他用手提肩背的方式将 Linux 带回了中国,组建了中国第一个自由软件库。然而宫敏则谦虚地表示,他只是中国自由软件和 Linux 的先行…

同济大学软件学院,获批教育部工程研究中心 !

转载于 高绩 近日,教育部公布2022年度教育部工程研究中心建设项目立项名单,同济大学软件学院申报的“智慧城市感知与规划重大工程软件技术教育部工程研究中心”获批立项建设。 “智慧城市感知与规划重大工程软件技术教育部工程研究中心” 主要依托同济大…

中国软件领域院士及其成就

中国软件领域院士及其成就 1. 陈国良 并行算法、高性能计算专家。1938年6月3日生于安徽颍上。1961年毕业于西安交通大学计算机专业。现任国家高性能计算中心(合肥)主任,中国科学技术大学教授。2003年当选为中国科学院院士。 主要从事并行算法…