python操作数据库

Python连接数据库

Python 数据库接口支持多种数据库,可以选择适合的数据库(例如):

1.GadFly

2.mSQL

3. MySQL

4. PostgreSQL

5.Microsoft SQL Server 2000

8.Oracl

此次一MySql为例:

 需求: 1.安装好了MySql

2.有一个Python项目

import pymysql //倒入模块
import django

con=pymysql.connect('localhost','root','asdf123','dsj101',charset="utf8") //连接MySql数据库(ip,用户名,密码,库名,utf8格式)
//查询数据
cur =con.cursor()
r=cur.execute("select * from tb_class")
a=cur.fetchall()
//for循环输出
for p in a:
    print("标号:{0:<10}班级名称:{1}".format(p[0],p[1]))
con.close()//关闭连接

用Django操作据库:

前提: 已经拥有一个django项目。已安装MySQLdb,进入mysql创建一个新的库(注意,这里必须是新的库,如果库里已经有表,就会出问题。)

修改项目中settings.py 配置数据属性:

INSTALLED_APPS = [
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'bloguser.apps.BloguserConfig'//会在数据库中自动加载你所创建的数据
DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',  //表示Django用的是MySql数据库
        'NAME': 'blog',          //MySql库名
        'USER': 'root',          //用户名
        'PASSWORD': 'asdf123',   //密码
        'HOST': 'localhost',     //ip
        'PORT': '3306'           //端口号
    }
}
在Django项目下,创建一个models.py文件(django项目启动的时候会自动去项目下找这个文件,请不要创建与之同名的文件夹,以免django混乱),接下来就是在这个文件中建立与settings文件中配置的db中表的映射。

from django.db import models   

# Create your models here.
class UserType(models.Model):   
    typeName = models.CharField(,max_length=50,null=False,unique=True)
class BlogUser(models.Model):
    userName=models.CharField(max_length=50,null=False,unique=True,)
    userPwd=models.CharField(max_length=32,null=False )
    userEmail=models.CharField(max_length=255,null=False,unique=True)
    userType=models.ForeignKey(UserType)

 除了上述字段示意之外,注意一些细节:

    第一,我们创建的这些类就对应了我们数据库中的表,类中的字段就是表的字段。

    第二,这些类都应继承django.db中的models.Model模块。

    第三,我们可以在类中创建一个Meta类指定表名,也可以不创建这个类,这样将会默认类名就是表名。

    第四,我们建立这些映射关系必须和表中的一样,例如是否为空,长度等,如果和表中的设计不符,就会报错。

      到此就在数据库中创建好了表,可以插入数据了



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值