iis服务器助手广告广告
返回顶部
首页 > 资讯 > 数据库 >django配置mysql数据库
  • 508
分享到

django配置mysql数据库

2024-04-02 19:04:59 508人浏览 安东尼
摘要

查看ubuntu已安装的所有软件:dpkg -l   dpkg -l | grep Mysql查看软件安装的路径dpkg -L | grep mysql查看开机启动的软件,需要额外安装插件:sudo apt

查看ubuntu已安装的所有软件:

dpkg -l  
dpkg -l | grep Mysql


查看软件安装的路径

dpkg -L | grep mysql


查看开机启动的软件,需要额外安装插件

sudo apt-get install rcconf
rcconf

更能全一点的:
sudo apt-get install sysv-rc-conf
sysv-rc-conf


安装mysql

# apt-get install python-setuptools libmysqld-dev libmysqlclient-dev 
# easy_install mysql-Python
或者 #pip install mysql-python



django setting配置:

DATABASES = {
    'default': {
        'ENGINE': 'Django.db.backends.mysql', 
        'NAME': 'books',  #你的数据库名称
        'USER': 'root',  #你的数据库用户名
        'PASSWord': '',   #你的数据库密码
        'HOST': '',       #你的数据库主机,留空默认为localhost
        'PORT': '3306',   #你的数据库端口
    }
}


在model模块中添加如下建表语句:

vi app/models.py

class test1(models.Model):    
    name = models.CharField(max_length=20)   #定义的字段name为字段名

model模块在app中,其中定义的类名就是表名(但是在数据库中的表名会以app为前缀,例如项目为app则实际创建的表名为app_test1),CharField相当于varchar,DateField相当于datetime,max_length 相当于参数限定长度“varchar(20)”


python manage.py makemigrations    #查看表有哪些更改
python manage.py migrate app     #创建表结构

注意:这里如果之前已经同步过一次数据,现在又要添加字段,会报错,解决办法是在字段后面添加

null=True

例如:

ages=models.CharField(max_length=10,null=True)



为表添加数据:django需要查询或者更新表时,需先导入表名才能获取表内的数据。

from app.models import test1
def huoqu(request):    
   a = test1(name='wangjiadongge')     #test1为表名,name为字段名。
   a.save()
   return HttpResponse("数据添加成功!")



数据操作:

#获取数据
def huoqu(request):  
    
    #通过objects这个模型管理器的all()获得所有数据行,相当于SQL中的SELECT * FROM
    list = test1.objects.all()    
    
    #filter相当于SQL中的WHERE,可设置条件过滤结果
    list1 = test1.objects.filter(id=1) 
    
    #获取单个对象
    list2 = test.objects.get(id=1) 
    
    #限制返回的数据 相当于 SQL 中的 OFFSET 0 LIMIT 2;
    test1.objects.order_by('name')[0:2]
    
    #数据排序
    test1.objects.order_by("id")
    
    #上面的方法可以连使用
    test1.objects.filter(name="runoob").order_by("id")
    
    #输出所有数据
    for var in list:        response1 += var.name + " "
    response = response1
    return HttpResponse("<p>" + response + "</p>")

#更新数据
# -*- coding: utf-8 -*-
 from djanGo.http import HttpResponse
 from app.models import test1
 def testdb(request):    #修改其中一个id=1的name字段,再save,相当于SQL中的UPDATE
    test = test1.objects.get(id=1)
    test.name = 'Google'
    test.save()
    
    #另外一种方式
    #test1.objects.filter(id=1).update(name='Google')
    
    # 修改所有的列
    # test1.objects.all().update(name='Google')
    
    return HttpResponse("<p>修改成功</p>")
#删除数据
# -*- coding: utf-8 -*-
 from django.http import HttpResponse
 from app.models import Test
 # 数据库操作def testdb(request):    # 删除id=1的数据
    test1 = Test.objects.get(id=1)
    test1.delete()
    
    #另外一种方式
    #test1.objects.filter(id=1).delete()
    
    #删除所有数据
    #test1.objects.all().delete()
    return HttpResponse("<p>删除成功</p>")


#django在前端中展示从数据库中获取到的数据:


html

{% for a in names %}
    id={{ a.id }}:name={{ a.name }}:sex={{ a.sex }}
{% endfor %}


注意:这里展示的数据必须是单条数据,若是展示整个数据库的内容必须是逐条,整个取的话会导致出现QuerySet [<test2: test2 object>这种数据。



django:

def testdb(request):
   
    #list = test2.objects.all()
    names = test2.objects.filter(id=1)
    print names
    #return HttpResponse('this is test select mysql!')
    return render_to_response('a.html',locals())  #locals()是获取整个本地变量


-------------------分割线--------------------



#django经典例子:

from django.db import models        #导入models模块

#表名:
class publisher(models.Model):        #定义表名为publish
    name=models.CharField(max_length=30)     #表字段name
    address=models.CharField(max_length=50)  #表字段address
    city=models.CharField(max_length=60)     #表字段city
    state_province=models.CharField(max_length=30)   
    county=models.CharField(default="CN",max_length=50)
    WEBsite=models.URLField()          #表字段website,字段类型为地址

表名:
class author(models.Model):
    first_name=models.CharField(max_length=30)
    last_name=models.CharField(max_length=40)
    email=models.EmailField(blank=True)     #字段名字为email,字段类型为email

#表名:
class book(models.Model):
    title=models.CharField(max_length=100)     #字段名为title,字段类型为vachar
    authors=models.ManyToManyField(author)     #字段名为author,字段类型为ManyToManyField
    publisher=models.ForeignKey(publisher)     #关联外部表publisher
    publication_date=models.DateField()        #字段名为publication_date,类型为日期类型


python manage.py makemigrations     #查看表有哪些更改
python manage.py migrate     #同步数据库
#运行上面这条命令出现的错误:
#Apply all migrations: admin, app, auth, contenttypes, sessions
#Running migrations:
#解决:这个错误是因为已经同步过一次数据库引起的,如果表中的字段要增加,需要添加null=True
#比如:ages=models.CharField(max_length=10,null=True)
#如果是新建一个表,则要删除app中migrations文件夹(一般不需要)。


#如果需要用户和密码,则执行:

python manage.py createsuperuser   #创建用户
python manage.py changepassword    #更改密码



#练习在python交互模式下操作数据库:

./manage.py shell              #进入django变量的交互器
from app.models import publisher #导入publisher数据库。


#插入一条数据:

p1=publisher(name='qinghua university',address='wudaokou',city='beijing',state_province='beijing',county='china',website='www.qinghua.com')

p1.name    #查看插入的name

p1.address  #查看插入的address

p1.save()   #插入的数据写入数据库中


#更新一条数据:

p1.address="qinghualu"
p1.save()



#查看所有的数据

在models模块中,建表语句下面添加如下:

def __unicode__(self):
    return self.name,self.address

然后再去交换窗口查看所有数据:

publisher.objects.all()


#查询国家等于中国的一条数据:

publisher.objects.filter(country="china")


#查询出来的数据进行更改:

a=publisher.objects.get(name="beijing")
a.county="USA"
a.save()


#高效的更新数据方式,并且无需save:

publisher.objects.filter(id=1).update(name="qingdaodaxue")



#在浏览器中打开后台管理数据库界面:

http://192.168.110.106/admin/


账号就是同步数据库时创建的用户名和密码,登陆进去。

在app下创建一个admin.py的文件

vi admin.py

from django.contrib import admin
from app.models import publisher,author,book
admin.site.reGISter(publisher)
admin.site.register(author)
admin.site.register(book)

完成后,重新打开页面。



#django中引用bootstrap:

在setting.py中:

MEDIA_ROOT='/root/project/statics/bootstrap/'


在url.py中:

from django.conf import settings

--------------------------------------分割线------------------------------------


您可能感兴趣的文档:

--结束END--

本文标题: django配置mysql数据库

本文链接: https://www.lsjlt.com/news/41448.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • django配置使用mysql数据库过程
    修改项目下setting.py文件下,DATABASES字典中的default字典中的内容:DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlit...
    99+
    2023-06-01
  • Django怎么配置Mysql数据库连接
    这篇文章主要介绍“Django怎么配置Mysql数据库连接”,在日常操作中,相信很多人在Django怎么配置Mysql数据库连接问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Django怎么配置Mysql数据...
    99+
    2023-07-05
  • 如何在Django中配置mysql数据库
    这篇文章将为大家详细讲解有关如何在Django中配置mysql数据库,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。1、先安装好MySQL的驱动mysqlclient:pip ins...
    99+
    2023-06-14
  • Django配置Mysql数据库连接的实现
    目录前言操作路线结束语前言 Django原生自带的数据库支持是SQLite,但是我们现在常用的数据库一般是mysql,mangodb等数据库。所以我们要改变数据库的链接,从而达到使用mysql作为django的数据库链接...
    99+
    2023-03-08
    Django连接Mysql数据库 Django连接Mysql
  • django的数据库配置-13
    数据库配置 打开mysite下的settings.py文件 DATABASES = { 'default': { 'ENGINE': 'django.db.backends.sqlite3', 'N...
    99+
    2023-01-30
    数据库 django
  • MySQL配置数据库审计
    MySQL配置数据库审计 1 背景2 环境3 准备工作4 安装审计4.1 解压审计包4.2 查看数据库插件目录4.3 安装数据库审计插件4.3.1 复制到插件目录4.3.2 修改插件权限4.3.3 设置审计参数4.3.4 修改数据库...
    99+
    2023-08-17
    数据库 mysql java
  • MySQL数据库安全配置
    这篇文章主要讲解了“MySQL数据库安全配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“MySQL数据库安全配置”吧!1、前言  MySQL是完全网络化的...
    99+
    2024-04-02
  • django单个app多数据库怎么配置
    在Django中,可以为单个app配置多个数据库。以下是配置单个app多数据库的步骤: 在settings.py中定义多个数据库连...
    99+
    2024-03-11
    django 数据库
  • MySQL数据库的安全配置
    本篇内容介绍了“MySQL数据库的安全配置”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!  由于MySQL...
    99+
    2024-04-02
  • Python框架之Django的数据库配置问题
    准备开始python的环境,用django框架其默认的数据库是sqlite3 ,要改用mysql来存储数据在执行migrate的时候出现问题(错误见末尾):Unhandled exception in th...
    99+
    2024-04-02
  • idea怎么配置mysql数据库
    要配置MySQL数据库,您可以按照以下步骤进行操作: 下载并安装MySQL数据库软件:您可以从MySQL官方网站下载MySQL数...
    99+
    2024-03-05
    idea mysql
  • Mac 系统配置 MySql 数据库
    1. 安装 MySql 数据库 1 双击打开安装包 mysql-8.0.19-macos10.15-x86_64.dmg: 2 双击 mysql-8.0.19-macos10.15-x86_64.pkg 运行安装包,并点击 继续 按钮: ...
    99+
    2023-08-18
    mysql 数据库 macos
  • Django项目怎么配置连接多个数据库
    今天小编给大家分享一下Django项目怎么配置连接多个数据库的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。一个APP对应一个...
    99+
    2023-06-30
  • mysql如何查看数据库配置
    要查看MySQL数据库的配置,可以使用以下步骤: 登录到MySQL数据库服务器上,可以使用命令行工具或者图形化工具。 运行以...
    99+
    2024-04-17
    mysql
  • MySQL数据库——MySQL配置文件(my.ini)详解
    my.ini 是 MySQL 数据库中使用的配置文件,MySQL 服务器启动时会读取这个配置文件,我们可以通过修改这个文件,达到更新配置的目的。 这里以 Windows 系统下的 my.ini 配置文件为样板,讲解 MySQL 配置文件中的...
    99+
    2023-09-02
    数据库 mysql 服务器
  • Django web开发(二) - Mysql数据库
    文章目录 Mysql数据库Mysql的安装(CentOS7)下载修改配置文件Mysql强制重置密码远程可登录 数据库管理数据表的管理常用数据类型数据管理添加数据查询数据删除数据修改数据 员工管理Python管理数据库添加...
    99+
    2023-08-18
    mysql 数据库 django
  • 怎么配置mysql数据库连接池
    配置mysql数据库连接池的方法在CATALINA_HOME/conf/server.xml中添加如下配置信息;<!--声明连接池-->    <Resource name="jdbc/mysql&qu...
    99+
    2024-04-02
  • 阿里云配置MySQL数据库教程
    本篇文章将详细介绍如何在阿里云上配置MySQL数据库。首先,我们将创建一个阿里云账户并注册一个实例。然后,我们将设置数据库实例的安全组和网络规则,以确保安全访问。接着,我们将安装并配置MySQL服务器,包括设置数据库服务器的用户名、密码和权...
    99+
    2023-11-18
    阿里 数据库 教程
  • JavaMaven配置数据库依赖(mysql和SQLserver)
    目录 一.使用maven创建项目二.配置依赖以及连接参数mysql部分SQLserver部分 一.使用maven创建项目 找到相应的maven类型进行项目创建,新版的IDEA可以直接在Archetype处进行类型的搜索。 ...
    99+
    2023-08-22
    数据库 mysql sqlserver maven
  • MySQL数据库的同步配置方法
    本篇内容主要讲解“MySQL数据库的同步配置方法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“MySQL数据库的同步配置方法”吧!   &n...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作