pymysql小节篇

mysql介绍:

  它是数据库,存储数据用的,增、删、改、查是对其使用的最基本的要求。

 

 

一、mysl

  基本操作:

    1.库操作

    create database q1;    创建一个q1数据库;

    drop database q1;       删除q1数据库;

    show databases;         展示所有数据库;

    2.表格操作

      创建表格:

        create table 表名(

                  列名  类型  是否可以为空,
                  列名  类型  是否可以为空
                )ENGINE=InnoDB DEFAULT CHARSET=utf8
 
        类型后面可以跟:
        1.null     可以不填   not null  必须要填
        2.defalut 2      指定默认内容是2    
        3.auto_increment     primary key   从1开始自增    一个表格只能有一个自增列,一般都会加一个主键(primary key)
        4.primary key          主键,一种特殊的唯一索引,不允许有空值,如果主键使用单个列,则它的值必须唯一,如果是多列,则其组合必须唯一。   

      删除表格: 

        drop table  表名;

      

      清空表格;

        delete from 表名;

        truncate table 表名;

      修改表格:

        增加列  alter table 表名  add coob int

        删除列  alter table 表名 drop column 列名

        修类型:

             修改类型    alter table 表名 modify column 列名 类型;  
             修改名称与类型  alter table 表名 change 原列名 新列名 类型;

          添加主键:alter table 表名 add primary key(列名);

          删除主键:alter table 表名 drop primary key;

               alter table 表名  modify  列名 int, drop primary key;
          

   

      3.列操作

      增:

      单条添加  insert into t1(coob,mary) values(1,"girl")

      多条添加  insert into 表 (列名,列名...) values (值,值,值...),(值,值,值...)

      删:

        delete from 表 where coob=1 and  mary'alex'

        清空表 delete from 

         改:update 表 set mary = 'alex' where coob>1   更改mary列的所有值为alex 前提是(coob的值小于1)

                   

      查:

        select from 表    显示所有的列及内容

        select from 表 where id > 1    显示id值大于1的所有内容。
        select nid,name,gender as gg from 表 where id > 1

  

二、pymysql

  介绍:是在python上操作mysql;

  1.增删改如下:

  思路:导入模块==> 创建连接==>创建游标(数据的接受与发送的枢纽)==>执行mysql语句==>commit()==>关闭游标和连接

import pymysql
#创建连接
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='Www123...',db="q1")

#创建游标
cursor = conn.cursor()

#执行mysql语句
# effect_row=cursor.execute("insert into tb1(coob)values('xxoo') ") #单条添加
# effect_row=cursor.executemany("insert into tb1(coob,tony)values(%s,%s)",[('a','b'),('aa','bb'),('aaa','bbb')])#多条添加
# effect_row=cursor.execute("delete from tb1 where mary>14")   #删
# effect_row=cursor.execute("update tb1 set coob='dd' where mary<2") #改


# 提交,不然无法保存新建或者修改的数据
conn.commit()

# 关闭
cursor.close()
conn.close()
pymysql增、删、改

  2.查:

  获取表格的数据是一个元组。

import pymysql
#创建连接
conn = pymysql.connect(host='127.0.0.1',port=3306,user='root',password='Www123...',db="q1")
#创建游标
cursor = conn.cursor()

# 执行mysql语句

cursor.execute("select * from tb1")
row_1 = cursor.fetchone()  #获取一行数据
# row_2 = cursor.fetchmany(3) #获取n 行数据
# row_3 = cursor.fetchall()   # 获取所有数据

cursor.close()
conn.close()
还可以设置游标来随意更改位置,获取想要的值
# cursor.scroll(1,mode='relative') #游标的位置相对与上一次结束的位置 加1
# cursor.scroll(1,mode='absolute') #一直以第一条为起始位置

 3.变元组为字典

 创建游标时设置添加红色字体,即可把获取到的数据编程字典类型。

 cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)

 cursor.scroll(1,mode='relative') #游标的位置相对与上一次结束的位置 加1

   cursor.scroll(1,mode='absolute') #一直以第一条为起始位置

posted @ 2017-06-24 11:36  鸽子灬  阅读(253)  评论(0编辑  收藏  举报