read_sql_query, read_sql_table

def read_sql_query(sql, con, index_col=None, coerce_float=True, params=None, parse_dates=None, chunksize=None):
    sql: mysql 语句
    con: 数据库连接对象
    index_col: 字符串或字符串列表,可选,默认值:无 要设置为索引的列(MultiIndex)
    coerce_float: 默认为True 尝试将非字符串,非数字对象(如decimal.Decimal)的值转换为浮点值.对SQL结果集很有用.
    params: tuple或dict,optional,default:None 要传递给执行方法的参数列表 read_sql_query("insert into cjk_test h values %(data)s",params={'data':v_split[11]})
    parse_dates: list或dict,默认值:None 要解析为日期的列名列表
    chunksize: int,默认无 如果指定,则返回一个迭代器,其中chunksize是要包含在每个块中的行数

def read_sql_table(table_name, con, schema=None, index_col=None, coerce_float=True, parse_dates=None, columns=None, chunksize=None):
    table_name: 数据库中SQL表的名称
    con: 数据库连接对象
    schema: str,要查询的数据库中的SQL模式的名称
    index_col: 字符串或字符串列表,可选,默认值:无 要设置为索引的列(MultiIndex)
    coerce_float: 默认为True 尝试将非字符串,非数字对象(如decimal.Decimal)的值转换为浮点值.对SQL结果集很有用.
    parse_dates: tuple或dict,optional,default:None 要传递给执行方法的参数列表 read_sql_query("insert into cjk_test h values %(data)s",params={'data':v_split[11]})
    columns: list,从SQL表中选择的列名列表。
    chunksize: int,默认无 如果指定,则返回一个迭代器,其中chunksize是要包含在每个块中的行数

dome:

import pandas as pd
import pymysql
from sqlalchemy import create_engine

class mysql_np(object):

    def __init__(self):
        self.db = pymysql.connect(host='localhost', port=3306, database='test', user='root', password='root',
                                  charset='utf8', autocommit=True)
        self.cursor = self.db.cursor()
        self.con = create_engine('mysql+pymysql://root:root@127.0.0.1:3306/test').connect()
        self.read_pd()

    def read_pd(self):
        select_sql = 'select * from drug_pool'
        insert_sql = "insert into drug_pool(drugLicense, drugName, updateTime) values('S2018', 'aaa', '2019-01-01 10:17:37')"
        update_sql = "update drug_pool set drugLicense='11111'  WHERE id=102"  # insert, update, delete 运行会报错 但mysql的数据会改变
        delete_sql = "delete from drug_pool where id=102"
        try:
            pd.read_sql_query(sql=insert_sql, con=self.db)
        except:
            pass
        finally:
            pass

        read_sql = pd.read_sql_query(sql=select_sql, con=self.db)
        print(read_sql)

        read_sql = pd.read_sql_table(table_name='drug_pool', con=self.con, columns=['drugLicense', 'drugName'])
        print(read_sql)

if __name__ == "__main__":
    mysql_np()

  

  

read_sql_query, def read_sql_table的更多相关文章

  1. numpy&pandas补充常用示例

    Numpy [数组切片] In [115]: a = np.arange(12).reshape((3,4)) In [116]: a Out[116]: array([[ 0, 1, 2, 3], ...

  2. python panda读写内存溢出:MemoryError

    pandas中read_xxx的块读取功能 pandas设计时应该是早就考虑到了这些可能存在的问题,所以在read功能中设计了块读取的功能,也就是不会一次性把所有的数据都放到内存中来,而是分块读到内存 ...

  3. pandas read_sql与read_sql_table、read_sql_query 的区别

    一:创建链接数据库引擎 from sqlalchemy import create_engine db_info = {'user':'user', 'password':'pwd', 'host': ...

  4. pandas.read_sql_query()读取数据库数据用chunksize的坑

    最近一项工作需要读取数据库中1500万条数据,考虑到数据量太大,不方便直接一次性读取,不然会内存爆炸.想到用pandas.read_sql_query()里有一个chunksize可以分批返回chun ...

  5. Scala Macros - 元编程 Metaprogramming with Def Macros

    Scala Macros对scala函数库编程人员来说是一项不可或缺的编程工具,可以通过它来解决一些用普通编程或者类层次编程(type level programming)都无法解决的问题,这是因为S ...

  6. 通过dll或def文件提取lib导入库文件

    很多时候第三方库或其他项目提供的库多数会以动态库的形式提供dll以及相应的lib导入库.头文件,不过也有的只是提供dll和头文件,或者也提供了def模块定义(用于导出函数)文件,此时若使用将不得不调用 ...

  7. class Solution(object): def fizzBuzz(self, n): a = [] i = 1 while(i <= n): if(i%15 == 0): a.append("FizzBuzz") elifleetcode day_01

    412. Fizz Buzz Write a program that outputs the string representation of numbers from 1 to n. But fo ...

  8. set、def、lambda、内置函数、文件操作

    set : 无序,不重复,可以嵌套 .add (添加元素) .update(接收可迭代对象)---等于批量 添加 .diffrents()两个集合不同差 .sysmmetric difference( ...

  9. val, lazy, def

    val strVal = scala.io.Source.fromFile("test.txt").mkString //在strVal被定义的时候获取值,如果test.txt不存 ...

随机推荐

  1. 2-2 远程管理命令-网卡和IP地址的概念

    02.查看或配置网卡信息 序号 命令 对应英文 作用 01 ifconfig configure a network interface 查看/配置计算机当前的网卡配置信息 02 ping ip地址 ...

  2. 解决:Unable to acquire the dpkg frontend lock (/var/lib/dpkg/lock-frontend), is another process using it?

    简单粗暴法 删除锁 $ sudo rm /var/cache/apt/archives/lock $ sudo rm /var/lib/dpkg/lock 如果还不行,重启虚拟机 $ reboot

  3. java(一)基础知识

    常见DOS命令: dir:列出当前目录下的文件以及文件夹 md:创建目录 rd: 删除目录 cd:进入指定目录 cd .. :返回上一级目录 cd \:返回根目录 del:删除文件 exit:退出do ...

  4. js 的cookie问题

    获取时解码可以用decodeURIComponent(),代替 unescape() // 设置cookiefunction setCookie(name,value) { var Days = 30 ...

  5. #3145. 「APIO 2019」桥梁

    #3145. 「APIO 2019」桥梁 题目描述 圣彼得堡市内所有水路长度总和约 282 千米,市内水域面积占城市面积的 7%.--来自维基百科 圣彼得堡位于由 \(m\) 座桥梁连接而成的 \(n ...

  6. MySQL属性SQL_MODE学习笔记

    最近在学习<MySQL技术内幕:SQL编程>并做了笔记,本博客是一篇笔记类型博客,分享出来,方便自己以后复习,也可以帮助其他人 SQL_MODE:MySQL特有的一个属性,用途很广,可以通 ...

  7. app自动化测试环境搭建之node+appium+ADT+MUMU模拟器

    一.安装Microsoft .NET Framework 4.5 检测本机已安装的程序中,是否已经安装Microsoft .NET Framework 4.5及以上的版本 如果没有安装,则获取安装文件 ...

  8. php laravel请求处理管道(装饰者模式)

    laravel的中间件使用了装饰者模式.比如,验证维护模式,cookie加密,开启会话等等.这些处理有些在响应前,有些在响应之后,使用装饰者模式动态减少或增加功能,使得框架可扩展性大大增强. 接下来简 ...

  9. Linux常用命令之重启关机命令

    shutdown命令 shutdown命令用来系统关机命令.shutdown指令可以关闭所有程序,并依用户的需要,进行重新开机或关机的动作. 实例 指定现在立即关机: shutdown -h now ...

  10. 前端之javascript1

    js介绍和js引入页面 学习前端脚本语言javascript的基本概念.页面引入方式.获取页面元素及操作元素属性的技巧,学习函数的基本定义方法和使用方法. JavaScript介绍 JavaScrip ...