python操作数据库

来源:互联网 发布:wow数据库 3.35 编辑:程序博客网 时间:2024/06/03 22:47

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 djangocon=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类指定表名,也可以不创建这个类,这样将会默认类名就是表名。

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

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



原创粉丝点击