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 16 Python
使用Python3 编写简单信用卡管理程序
Dec 21 Python
Python实现的插入排序算法原理与用法实例分析
Nov 22 Python
使用python编写简单的小程序编译成exe跑在win10上
Jan 15 Python
基于pip install django失败时的解决方法
Jun 12 Python
tensorflow实现加载mnist数据集
Sep 08 Python
Django如何自定义分页
Sep 25 Python
Linux CentOS Python开发环境搭建教程
Nov 28 Python
Python3.4学习笔记之列表、数组操作示例
Mar 01 Python
Python中的整除和取模实例
Jun 03 Python
Python编写可视化界面的全过程(Python+PyCharm+PyQt)
May 17 Python
python缺失值的解决方法总结
Jun 09 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 Directory 函数的详解
2013/03/07 PHP
php实现多张图片上传加水印技巧
2013/04/18 PHP
php获取指定范围内最接近数的方法
2015/06/02 PHP
PHP使用mkdir创建多级目录的方法
2015/12/22 PHP
浅谈laravel中的关联查询with的问题
2019/10/10 PHP
PHP安装扩展mcrypt以及相关依赖项深入讲解
2021/03/04 PHP
使用jQuery内容过滤选择器选择元素实例讲解
2013/04/18 Javascript
Jquery 垂直多级手风琴菜单附源码下载
2015/11/17 Javascript
jQuery Easyui学习之datagrid 动态添加、移除editor
2016/01/27 Javascript
基于jQuery实现页面搜索功能
2020/03/26 Javascript
Vue.js实现列表清单的操作方法
2017/11/15 Javascript
微信小程序实现点击文字页面跳转功能【附源码下载】
2017/12/12 Javascript
Vue实现底部侧边工具栏的实例代码
2018/09/03 Javascript
基于Vue组件化的日期联动选择器功能的实现代码
2018/11/30 Javascript
Vue 使用formData方式向后台发送数据的实现
2019/04/14 Javascript
Python中__init__和__new__的区别详解
2014/07/09 Python
python 实现的发送邮件模板【普通邮件、带附件、带图片邮件】
2019/07/06 Python
python3调用windows dos命令的例子
2019/08/14 Python
Python 如何对文件目录操作
2020/07/10 Python
openCV提取图像中的矩形区域
2020/07/21 Python
如何在scrapy中捕获并处理各种异常
2020/09/28 Python
Python使用cn2an实现中文数字与阿拉伯数字的相互转换
2021/03/02 Python
HTML5获取当前地理位置并在百度地图上展示的实例
2020/07/10 HTML / CSS
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
打印机墨盒:123Inkjets
2017/02/16 全球购物
本科毕业自我鉴定
2014/03/20 职场文书
硕士研究生就业推荐信
2014/05/18 职场文书
钱学森观后感
2015/06/04 职场文书
关于远足的感想
2015/08/10 职场文书
离职员工给领导和同事的感谢信
2015/11/03 职场文书
利用html+css实现菜单栏缓慢下拉效果的示例代码
2021/03/30 HTML / CSS
python 如何用terminal输入参数
2021/05/25 Python
详解Python为什么不用设计模式
2021/06/24 Python
手写Spirit防抖函数underscore和节流函数lodash
2022/03/22 Javascript
Java GUI编程菜单组件实例详解
2022/04/07 Java/Android
uniapp引入支付宝原生扫码插件步骤详解
2022/07/23 Javascript