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命令行交互提示符的方法
Jan 14 Python
Python实现对比不同字体中的同一字符的显示效果
Apr 23 Python
python中lambda与def用法对比实例分析
Apr 30 Python
Python实现比较两个文件夹中代码变化的方法
Jul 10 Python
python编写分类决策树的代码
Dec 21 Python
python中pylint使用方法(pylint代码检查)
Apr 06 Python
python实现简单登陆系统
Oct 18 Python
python实现简单的单变量线性回归方法
Nov 08 Python
Python网络爬虫信息提取mooc代码实例
Mar 06 Python
django ObjectDoesNotExist 和 DoesNotExist的用法
Jul 09 Python
python中编写函数并调用的知识点总结
Jan 13 Python
python scrapy简单模拟登录的代码分析
Jul 21 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与javascript的两种交互方式
2006/10/09 PHP
PHP执行速率优化技巧小结
2008/03/15 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
thinkphp实现多语言功能(语言包)
2014/03/04 PHP
php使用正则表达式获取图片url的方法
2015/01/16 PHP
php获得网站访问统计信息类Compete API用法实例
2015/04/02 PHP
jquery 常用操作整理 基础入门篇
2009/10/14 Javascript
jQuery JSON的解析方式分享
2011/04/05 Javascript
非html5实现js版弹球游戏示例代码
2013/09/22 Javascript
jquery下拉select控件操作方法分享(jquery操作select)
2014/03/25 Javascript
jQuery结合HTML5制作的爱心树表白动画
2015/02/01 Javascript
究竟什么是Node.js?Node.js有什么好处?
2015/05/29 Javascript
JS防止网页被嵌入iframe框架的方法分析
2016/09/13 Javascript
Vue中使用create-keyframe-animation与动画钩子完成复杂动画
2019/04/09 Javascript
初学node.js中实现删除用户路由
2019/05/27 Javascript
详解Vue项目引入CreateJS的方法(亲测可用)
2019/05/30 Javascript
Python的for和break循环结构中使用else语句的技巧
2016/05/24 Python
Django uwsgi Nginx 的生产环境部署详解
2019/02/02 Python
python scipy卷积运算的实现方法
2019/09/16 Python
Python跑循环时内存泄露的解决方法
2020/01/13 Python
python使用gdal对shp读取,新建和更新的实例
2020/03/10 Python
PyTorch中torch.tensor与torch.Tensor的区别详解
2020/05/18 Python
django ORM之values和annotate使用详解
2020/05/19 Python
python相对企业语言优势在哪
2020/06/12 Python
Python爬虫之Selenium库的使用方法
2021/01/03 Python
css3的transition效果和transfor效果示例介绍
2013/10/30 HTML / CSS
街头时尚在线:JESSICABUURMAN
2019/06/16 全球购物
澳大利亚床上用品、浴巾和家居用品购物网站:Bambury
2020/04/16 全球购物
母亲追悼会答谢词
2014/01/27 职场文书
业务部门经理岗位职责
2014/02/23 职场文书
有创意的广告词
2014/03/18 职场文书
工程售后服务承诺书
2014/05/21 职场文书
求职信怎么写范文
2014/05/26 职场文书
小学教师工作总结2015
2015/04/07 职场文书
Nginx同一个域名配置多个项目的实现方法
2021/03/31 Servers
PostgreSQL存储过程实用脚本(二):创建函数入门
2021/04/05 PostgreSQL