read_sql_query, def read_sql_table
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的更多相关文章
- numpy&pandas补充常用示例
Numpy [数组切片] In [115]: a = np.arange(12).reshape((3,4)) In [116]: a Out[116]: array([[ 0, 1, 2, 3], ...
- python panda读写内存溢出:MemoryError
pandas中read_xxx的块读取功能 pandas设计时应该是早就考虑到了这些可能存在的问题,所以在read功能中设计了块读取的功能,也就是不会一次性把所有的数据都放到内存中来,而是分块读到内存 ...
- pandas read_sql与read_sql_table、read_sql_query 的区别
一:创建链接数据库引擎 from sqlalchemy import create_engine db_info = {'user':'user', 'password':'pwd', 'host': ...
- pandas.read_sql_query()读取数据库数据用chunksize的坑
最近一项工作需要读取数据库中1500万条数据,考虑到数据量太大,不方便直接一次性读取,不然会内存爆炸.想到用pandas.read_sql_query()里有一个chunksize可以分批返回chun ...
- Scala Macros - 元编程 Metaprogramming with Def Macros
Scala Macros对scala函数库编程人员来说是一项不可或缺的编程工具,可以通过它来解决一些用普通编程或者类层次编程(type level programming)都无法解决的问题,这是因为S ...
- 通过dll或def文件提取lib导入库文件
很多时候第三方库或其他项目提供的库多数会以动态库的形式提供dll以及相应的lib导入库.头文件,不过也有的只是提供dll和头文件,或者也提供了def模块定义(用于导出函数)文件,此时若使用将不得不调用 ...
- 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 ...
- set、def、lambda、内置函数、文件操作
set : 无序,不重复,可以嵌套 .add (添加元素) .update(接收可迭代对象)---等于批量 添加 .diffrents()两个集合不同差 .sysmmetric difference( ...
- val, lazy, def
val strVal = scala.io.Source.fromFile("test.txt").mkString //在strVal被定义的时候获取值,如果test.txt不存 ...
随机推荐
- CentOS7 忘记Root密码解决方法
1- 在启动grub菜单,选择编辑选项启动 2 - 按键盘e键,来进入编辑界面 3 - 找到Linux 16的那一行,将ro改为rw init=/sysroot/bin/sh 4 - 现在 ...
- 【python3基础】python3 神坑笔记
目录 os 篇 os.listdir(path) 运算符篇 is vs. == 实例 1:判断两个整数相等 实例 2:argparse 传参 实例 3:np.where 命令行参数篇 Referenc ...
- Vue中的导航守卫(路由守卫)
当做Vue-cli项目的时候感觉在路由跳转前做一些验证,比如登录验证,是网站中的普遍需求. 对此,vue-router 提供的 beforeEach可以方便地实现全局导航守卫(navigation-g ...
- Matplotlib绘图及动画总结
目录 Matplotlib绘图总结 绘图原理 block模式(python默认) interactive模式(ipython模式默认) 深入子图 子图表示 子图绘图 绘制动画 参考链接 Matplot ...
- Unity BehaviorDesigner行为树基础总结
BehaviorDesigner——行为树,用于控制和实现AI逻辑,类似于这样: 上面这个行为树实现了这样的逻辑: 当Player有Input时按照Input值来移动,无Input时查找最近的可攻击目 ...
- Linq分页排序通用方法
1.通用方法 2.调用 -----------------------------1.------------------------------------------- public class ...
- 遍历json数据的几种方式
json(JavaScript Object Notation),json是一种多用于存储和交换文本信息的语法.他能够进行数据的传输,通常和ajax一起使用.它具有体积小.速度快,易解析等诸多优点. ...
- asp.net core 新建area使用asp-action,asp-controller不管用
解决方法: 在新建的Area目录下,这里使用Admin,Admin/Views下新建_ViewImports.cshtml和_ViewStart.cshtml两个视图文件,复制项目自动生成的到对应的新 ...
- Java生鲜电商平台-微服务入门与服务的拆分架构实战
Java生鲜电商平台-微服务入门与服务的拆分架构实战 刚开始进入软件行业时还是单体应用的时代,前后端分离的概念都还没普及,开发的时候需要花大量的时间在“强大”的JSP上面,那时候SOA已经算是新技术了 ...
- Java关键字之abstract、final、static用法
abstract:即抽象的,可以修饰类.方法: 修饰类:当有一个方法为抽象方法时,这个类就是抽象类,抽象类不能被new,它是一个不完整的类. 修饰方法:这个方法就是抽象的,即只能方法的定义,没有方法的 ...