0002-存入mysql数据库

代码

import pymysql
import string
import random

KEY_VALUE = 20
KEY_NUMBER = 200

conn = pymysql.connect(host='127.0.0.1', port=3306, user='root',
                       passwd='passwd', db='python_practice')

def all_str():
    return string.ascii_letters + string.digits


def insert_into_db(cur, data):   # 特别愚蠢的写法
    sql_insert_into_table = 'insert into voucher(key_value) VALUE (%s)'
    cur.execute(sql_insert_into_table, data)
    conn.commit()


def query_data(cur):
    sql_query_db = 'select * from voucher WHERE id BETWEEN  20 AND 30'
    cur.execute(sql_query_db)
    for i in cur.fetchall():
        print(i)
    conn.commit()


def insert_datas(cur, list):
    sql_insert_datas = 'insert into voucher(key_value) VALUES (%s)'
    cur.executemany(sql_insert_datas, list)
    conn.commit()


def delete_data(cur):
    sql_delete_data = 'delete from voucher WHERE id = 2'
    cur.execute(sql_delete_data)
    conn.commit()

with conn.cursor() as cur:
    result = []
    for i in range(200):
        st = [random.choice(all_str()) for j in range(20)]
        st = ''.join(st)
        result.append(st)
    insert_datas(cur, result)
    query_data(cur)
    delete_data(cur)



新知识

多条插入时,用executemany语句,不要使用insert_into_db中那样的写法,效率很低
自增的主键:id INT(20) not null AUTO_INCREMENT,primary key (id)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 第1章 初涉MySQL 1.1 MySQL文件 (1)MySQL目录结构 (2)MySQL配置向导文件(安装后配置...
    凛0_0阅读 860评论 1 0
  • MySQL 数据库常用命令 1、MySQL常用命令 create database name; 创建数据库 use...
    55lover阅读 4,870评论 1 57
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,839评论 18 399
  • .数据库 数据库的发展: 文件系统(使用磁盘文件来存储数据)=>第一代数据库(出现了网状模型,层次模型的数据库)=...
    小Q逛逛阅读 1,033评论 0 2
  • (一)Oracle数据库 1.oracle中row_id理解 ORACLE的row_id是一个伪列,其个是为18个...
    独云阅读 5,699评论 0 10