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


Posted in Python onNovember 07, 2013

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': 'djangodb',                      # Or path to database file if using sqlite3.
        # The following settings are not used with sqlite3:
        'USER': 'root',
        'PASSWORD': 'root',
        'HOST': '127.0.0.1',                      # Empty for localhost through domain sockets or '127.0.0.1' for localhost through TCP.
        'PORT': '3306',                      # Set to empty string for default.
    }
}

修改完后进入DOS进入项目目录下执行python manage.py shell命令启动交互界面输入一下代码验证数据库配置是否成功。没报错则成功!
>>> from django.db import connection
>>> cursor = connection.cursor()

 3、创建一个Django app
一个项目中包含一个或多个这样的app。app可以理解为一块功能集合。比如产品管理模块就包含增删该查等功能,可以把产品管理叫做一个app。每个Django app都有独立的models,views等,易移植和被复用。
DOS进入项目目录 执行 python manage.py startapp products生成目录文件如下:
products/
    __init__.py
    models.py
    tests.py
    views.py

 4、编写models
from django.db import models
# Create your models here.
class Company(models.Model):
    full_name = models.CharField(max_length=30)
    address = models.CharField(max_length=50)
    tel = models.CharField(max_length=15,blank=True)
class Product(models.Model):
    product_name = models.CharField(max_length=30)
    price = models.FloatField()
    stock = models.IntegerField(max_length=5)
    company = models.ForeignKey(Company)

 5、模型安装(修改settings.py)
INSTALLED_APPS = (
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.sites',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    # Uncomment the next line to enable the admin:
     'django.contrib.admin',
    # Uncomment the next line to enable admin documentation:
     'django.contrib.admindocs',
    'DjangoMysqlSite.products',
)

采用 python manage.py validate 检查模型的语法和逻辑是否正确。
没有错误则执行 python manage.py syncdb创建数据表。
现在你可以看到你的数据库除了生成了products_company,products_product外还创建了其它好几个表,这些是django管理后台所需表暂不管。

6、简单的增删改查
 进入python manage.py shell

from DjangoMysqlSite.products.models import Company
>>> c = Company(full_name='集团',address='杭州西湖',tel=8889989)
>>> c.save()>>> company_list = Company.objects.all()
>>> company_list
>>> c = Company.objects.get(full_name="集团")
>>> c.tel = 123456
>>> c.save()
 

>>> c = Company.objects.get(full_name="集团")
>>> c.delete()
#删除所有
>>> Company.objects.all().delete()
Python 相关文章推荐
python实现博客文章爬虫示例
Feb 26 Python
Python删除空文件和空文件夹的方法
Jul 14 Python
通过Python 获取Android设备信息的轻量级框架
Dec 18 Python
Python+Turtle动态绘制一棵树实例分享
Jan 16 Python
python实现一个简单的并查集的示例代码
Mar 19 Python
Python模拟百度自动输入搜索功能的实例
Feb 14 Python
python调用matlab的m自定义函数方法
Feb 18 Python
python 实现在一张图中绘制一个小的子图方法
Jul 07 Python
简单了解python的一些位运算技巧
Jul 13 Python
关于pytorch多GPU训练实例与性能对比分析
Aug 19 Python
浅谈Python描述数据结构之KMP篇
Sep 06 Python
PyChon中关于Jekins的详细安装(推荐)
Dec 28 Python
使用Python下载Bing图片(代码)
Nov 07 #Python
python中文乱码的解决方法
Nov 04 #Python
python Django模板的使用方法(图文)
Nov 04 #Python
使用python Django做网页
Nov 04 #Python
教你安装python Django(图文)
Nov 04 #Python
python条件和循环的使用方法
Nov 01 #Python
讲解python参数和作用域的使用
Nov 01 #Python
You might like
PHP截取汉字乱码问题解决方法mb_substr函数的应用
2008/03/30 PHP
解析用PHP实现var_export的详细介绍
2013/06/20 PHP
codeigniter使用技巧批量插入数据实例方法分享
2013/12/31 PHP
PHP实现的增强性mhash函数
2015/05/27 PHP
Thinkphp无限级分类代码
2015/11/11 PHP
ThinkPHP框架获取最后一次执行SQL语句及变量调试简单操作示例
2018/06/13 PHP
新老版本juqery获取radio对象的方法
2010/03/01 Javascript
基于jquery的blockui插件显示弹出层
2011/04/14 Javascript
Javascript中找到子元素在父元素内相对位置的代码
2012/07/21 Javascript
用js提交表单解决一个页面有多个提交按钮的问题
2014/09/01 Javascript
js实现从中间开始往上下展开网页窗口的方法
2015/03/02 Javascript
JS实现的最简Table选项卡效果
2015/10/14 Javascript
JQuery zClip插件实现复制页面内容到剪贴板
2015/11/02 Javascript
jQuery Ajax和getJSON获取后台普通json数据和层级json数据用法分析
2016/06/08 Javascript
express文件上传中间件Multer详解
2016/10/24 Javascript
JS生成一维码(条形码)功能示例
2017/01/19 Javascript
微信小程序左右滑动的实现代码
2017/12/15 Javascript
VUE+Element UI实现简单的表格行内编辑效果的示例的代码
2018/10/31 Javascript
[05:15]2018年度CS GO社区贡献奖-完美盛典
2018/12/16 DOTA
python通过定义一个类实例作为ftp回调方法
2015/05/04 Python
Go/Python/Erlang编程语言对比分析及示例代码
2018/04/23 Python
利用Python正则表达式过滤敏感词的方法
2019/01/21 Python
Python元组知识点总结
2019/02/18 Python
Python3+OpenCV2实现图像的几何变换(平移、镜像、缩放、旋转、仿射)
2019/05/13 Python
Python学习笔记之变量、自定义函数用法示例
2019/05/28 Python
如何基于python测量代码运行时间
2019/12/25 Python
详解CSS3 Media Queries中媒体属性的使用
2016/02/29 HTML / CSS
请说出你所知道的线程同步的方法
2013/04/19 面试题
协议书怎么写
2014/04/21 职场文书
中学生社会实践活动总结
2014/07/03 职场文书
网吧七夕活动策划方案
2014/08/31 职场文书
电子商务专业求职信范文
2015/03/19 职场文书
团结友爱主题班会
2015/08/13 职场文书
2016年“我们的节日·中秋节”活动总结
2016/04/05 职场文书
vue项目配置sass及引入外部scss文件
2022/04/14 Vue.js
springboot+rabbitmq实现智能家居实例详解
2022/07/23 Java/Android