精华内容
下载资源
问答
  • 那么python如何数据库之间交互才是未来我们真正需要关心的。因为我们的数据最终还是要存储到数据库中去的。python与数据库之间的交互有很多。可以通过第三方包及API与不同的数据库之间交互。我个人的环境资源...

    通过python与mysql数据库做交互

    到目前为止大部分案例的演示数据都是基于文件进行读取的。那么python如何跟数据库之间做交互才是未来我们真正需要关心的。因为我们的数据最终还是要存储到数据库中去的。

    python与数据库之间的交互有很多。可以通过第三方包及API与不同的数据库之间做交互。我个人的环境资源有限,因此这篇稿子是主要记录python是如何同mysql数据库之间进行交互的。

    一,安装并配置mysql数据库

    上述是我mysql数据库的章节,感兴趣的可以按照此步骤进行安装。这个是基于windows平台的安装。如果您装的是linux的话,可以yum install mysql 或者通过官网下载更新版本的mysql到本地安装。

    友情提示:mysql数据库安装过后,windows的话要自行创建my.ini配置文件。里面的配置非常的重要如果配置项有问题,会导致mysql的services不能被正常启动。建议配置项一个个配置然后restart mysql的服务,能启动说明此配置项没问题。另外mysql配置完毕后默认很多权限及参数是OFF的。比如说自动load本地file到数据库默认就是不被打开的。所以要在my.ini中配置允许load本地文件才可以通过load data infile命令将本地文件传入mysql。具体我就不一一讲解了。遇到问题请问度娘。

    我把我本人遇到的坑的解决方案链接提供在下方了。如果您也遇到了请尝试解决。

    二,安装 Heidisql (免费的mysql图形化管理工具)

    三,安装mysql依赖包

    安装完mysql数据库后,对应的也要在python中安装对应的依赖包,如下。

    import pymysql

    from sqlalchemy import create_engine

    如果你直接在python IDE中导入这两个包是肯定不存在的。如果您用的事pycharm的话可以尝试intall这两个包如果安装成功最好。如果不行请通过windows命令行中的pip来进行安装。

    建议不管您用的是什么IDE都直接通过pip install依赖包。

    pip install pymysql

    pip install sqlalchemy

    四,安装EditPlus 5 或者 EmEditor工具

    标题这两个工具可以将我们Excel中导出的xlsx,csv, txt 等格式的数据做清洗用的。可以帮助我们更好的对数据进行规整,把规整过后的数据存入数据库。

    EditPlus 5 安装及使用

    EmEditor 安装及使用

    五,python中操作mysql数据库案例演示

    注释:首先如何使用mysql这里不作解释,如果有疑问请参照我mysql篇的章节。以下的所有演示都是基于数据库已经有数据,或者说有空表,如何用python对其进行增删改查访问等操作的演示。下面这个就是我用HeidiSQL打开的MySQL数据库。接下来我们进行的所有操作都围绕all_students这章表来进行。

    926058-20200729140546125-135533534.jpg

    1. 通过python打开mysql中的all_students这章表

    注意:代码依然是基于jupyther来运行的。如果您用的是.py的文件打印请都用print()来运行。

    #%%

    import pandas as pd

    import pymysql

    from sqlalchemy import create_engine

    #链接mysql数据库(指定到database名)

    con = create_engine("mysql+pymysql://root:root@localhost/liupeng")

    #链接到具体的table

    read_sql01 = pd.read_sql('all_students',con)

    read_sql01.head(10) #读取数据表内容(10行)

    926058-20200729141154598-1209137100.jpg

    2. 按照指定的表头来读取mysql数据

    #按照指定的表头来读取数据

    read_sql02 = pd.read_sql('all_students',con,columns=["cls_id","exam_nu","stu_name","gender","total"])

    read_sql02.head(3)

    926058-20200729141358855-350768919.jpg

    3. 按照mysql语句对数据进行筛选

    #%%

    #通过reqd_sql(sql语句)的方式读取部分数据

    read_sql03 = pd.read_sql('select cls_id,stu_name,total from liupeng.all_students where cls_id < 3 order by total',con=con)

    read_sql03

    926058-20200729141653563-1870588560.jpg

    4. 向mysql数据表添加一条数据(增)

    注释:对于mysql中的增删改所用到的命令都是con.execute函数!!!

    数据插入前:

    926058-20200729142031536-1786599429.jpg

    #执行sql的增删改操作用.execute("sql语句")的函数

    #追加一条sql语句到mysql数据库

    con.execute("insert into liupeng.all_students values ('1','刘景芮',100,100,98,298,'女',2018746)")

    数据插入后:

    926058-20200729142244059-1476791046.jpg

    5. 向mysql数据表修改一条数据(改)

    注意:这里我查的是exam_nu=2018746,因为查名字已经变成关羽了。所以用唯一的id号来进行查询

    con.execute("update liupeng.all_students set stu_name='关羽' where exam_nu=2018746 ")

    926058-20200729143006801-954581679.jpg

    6. 向mysql数据库删除一条数据(删)

    注意:条目被删除后无论你指向stu_name还是exam_nu,返回结果都是0,因为数据本身已经被删除。

    926058-20200729143556736-1195390536.jpg

    926058-20200729143609456-475772079.jpg

    7. 如何将本地数据添加到MySQL数据表中

    强调:如果您的Mysql数据库的my.ini没有做以下的配置建议把配置写到my.ini中。如果您只是临时使用一下,请按照我的方法运行。不然MySQL不支持本地文件的加载。

    926058-20200729144504646-1997705299.jpg

    例如我们把以下一个txt文本导入到mysql数据库中

    1魏薇735954186女2018010

    1朱瑞麒596034153女2018012

    1黄慧婕738184238女2018027

    1张章605548163男2018094

    1沈政宇517127149男2018108

    1宋承泽687453195男2018113

    1马彦冰777252201女2018148

    1马恺618372216男2018166

    1王锦程809683259男2018167

    1闫瑾746464202女2018196

    1王晓渝45122885女2018198

    1王浩然798669234女2018246

    1徐菁549060204女2018256

    创建MySQL对应的表格,我个人比较懒,因此我直接通过like命令复制了all_students的表结构来创建的stu_test表。

    926058-20200729145337253-1965330701.jpg

    创建过后的结构是这样的。。其中没有任何的内容只有结构!!

    926058-20200729145527049-471892273.jpg

    导入数据到mysql中的stu_test表中。对于数据的导入可以直接通过图形化界面来做。也可以通过命令行来做。

    这里为了省事,我直接在底层的mysql数据库通过load data infile的方法把数据追加到stu_test表格中了。

    926058-20200729151052967-2106537839.jpg

    当然如果您想通过python中的语句来将数据导入mysql数据库中也是可以的。在此我奉上以下链接希望对大家有所帮助。

    展开全文
  • 用Excel做数据库开发的小程序例子C#

    热门讨论 2007-08-10 14:25:21
    如果想给别人一个小软件,但是又不想SQLServer 或Access数据库,那么选择Excel就是最好的选择了.这代码会告诉你如何像连SQL Server 或是Access那样连Excel.
  • 近写了点关于将excel导入数据库的代码,当然也可以看做是对前面所介绍的小项目进行补充所的准备。  我一般都是先完成功能,然后将其封装成块,再添加到项目中,个人癖好不值得借鉴。项目中关于解析excel数据的...
  • 最近写了点关于将excel导入数据库的代码,当然也可以看做是对前面所介绍的小项目进行补充所的准备。 我一般都是先完成功能,然后将其封装成块,再添加到项目中,个人癖好不得借鉴。 这是已经成功插入数据化数据库...

    最近写了点关于将excel导入数据库的代码,当然也可以看做是对前面所介绍的小项目进行补充所做的准备。 我一般都是先完成功能,然后将其封装成块,再添加到项目中,个人癖好不得借鉴。 这是已经成功插入数据化数据库中数据的记录,我新建的表为db. 这是在控制

    最近写了点关于将excel导入数据库的代码,当然也可以看做是对前面所介绍的小项目进行补充所做的准备。

    我一般都是先完成功能,然后将其封装成块,再添加到项目中,个人癖好不值得借鉴。

    0b51ce1cb9fda1b4e9e7161094f3f4b5.png

    34fe05f9baa7ae1502955dc520b41331.png

    这是已经成功插入数据化数据库中数据的记录,我新建的表为db. 这是在控制台的数据输入喎?http://www.2cto.com/kf/ware/vc/" target="_blank" class="keylink">vcD4KPHA+uty24MqxuvLGtL3T19a3+7Suyse63Lbgz+7Ev7HY0OvX9rXEo6y4w7T6wuvW0M7SxrS908HLsrvJ2XNxbNPvvuSjrNKy0O3T0Lj8vPK1pbXEt73KvaOstavKx87Sz9bU2ta7xNzP67W91eLSu7K9oaM8L3A+CjxwcmUgY2xhc3M9"brush:sql;">/**将execl数据导入数据库

    * @author trsli

    * */

    public class CreateDBTable {

    private static Connection conn;

    private static String sql="";

    private static StringBuffer buf=new StringBuffer();

    static{

    conn=DBConnection.getConnection();

    }

    public static void main(String[] args) {

    //数据.xls文件路径

    System.out.println("输入文件路径:");

    String filename=new Scanner(System.in).nextLine();

    //获取需要插入数据库的数据内容

    Object[][] contents=new PoiUtil().getmessage(filename);

    //获取数据库创建表格的字段名

    Object[] titles=new PoiUtil().gettitles(filename);

    System.out.println("输入数表格名:");

    String fname=new Scanner(System.in).nextLine();

    try {

    String ziduan="";

    String blank="";

    PreparedStatement stmt=conn.prepareStatement(sql);

    buf.append("create table "+fname+"( id int primary key auto_increment");

    //拼接字符串,主要是为了完全实现动态创建数据表格以及后期插入数据

    for(int i=0;i整个代码很简单,可以从中提取出需要的方法,用于其它需要的地方。

    997c7d990b54077bd60cc920e0bfc0de.png

    5dc92037e0fa33a718fc438f4b1fee46.png

    这是数据库中数据的显示。 以下是原数据:

    d4aa056042ba60e1361f1bfa60dfda28.png

    f68f2add0b68e4f9810432fce46917b7.png

    本文原创发布php中文网,转载请注明出处,感谢您的尊重!

    展开全文
  • 可以这样操作:先pandas读取Excel表格,将表格内容转化成一个dataframe数据,然后将这个df数据整体写入数据库。我在处理这个问题的时候,一开始没有弄清楚,需不需要先在数据库里建好表,甚至建好字段。后来验证的...

    假设我现在有一个很大的Excel表格,想整体作为一张表写入数据库,方便以后处理。可以这样操作:

    先用pandas读取Excel表格,将表格内容转化成一个dataframe数据,然后将这个df数据整体写入数据库。

    我在处理这个问题的时候,一开始没有弄清楚,需不需要先在数据库里建好表,甚至建好字段。后来验证的结果是,如果用SQLAlchemy这个库来做的话,是不需要的。

    这实际上是用到了ORM(Object Relational Mapping, 对象关系映射)技术,可以将dataframe数据映射成数据表,也可以将数据表映射成dataframe数据。

    读取Excel表格数据

    我的Excel文件路径是D:\PythonDemo\wallet\wallet.xlsx,这是我平时用的记账APP导出的文件。

    import pandas as pd

    excelFile = r'D:\PythonDemo\wallet\wallet.xlsx'

    df = pd.DataFrame(pd.read_excel(excelFile))

    首先,将文件路径存到excelFile变量,使用pd.read_excel()函数来读取这个Excel数据,然后用pd.DataFrame()函数转化成dataframe数据类型赋值给df变量。

    至此,我们已经获得了一个和Excel表格结构相同的dataframe数据,接下来就是将它写入到数据库中。

    写入数据库

    数据库连接需要用到pymysql库,网上也有不少说到用mysqldb这个库,实测python3并不好用,所以还是推荐用pymysql。另一个sqlalchemy库是用来将dataframe数据与数据表进行互相转化映射的。

    from sqlalchemy import create_engine

    import pymysql

    engine =create_engine('mysql+pymysql://root:''@localhost:3306/mydata',encoding='utf8')

    df.to_sql('wallet',con=engine,if_exists='replace',index=False)

    我们使用create_engine()函数连接数据库。

    这里,mysql是你用的数据库,pymysql是你用的连接数据库的库,root对应数据库用户名,root冒号后面写数据库的密码,我的MySQL数据库在本地,所以密码为空。@符合后面写数据库地址,本地是localhost,3306是端口,mydata是数据库名。虽然不需要提前建好数据表,但是数据库还是得准备好。

    然后调用df.to_sql()函数将dataframe数据写入:

    df.to_sql('wallet',con=engine,if_exists='replace',index=False)

    第一个参数是你希望新建的表的名字,第二个con=后面接前面一句的engine对象,后面的参数表示如果已经存在就进行替换。

    执行,然后用navicat连接数据库看一下,果然成功了:

    微信截图_20181116144232.png

    展开全文
  • 如何excel表导入mysql数据库 文章目录如何excel表导入mysql数据库建表数据库 建表 所需数据库的表的字段必须在excel表中存在; 另存为csv, csv默认为逗号制表符 点击是 然后记事本打开另存为utf-8编码格式...

    如何将excel表导入mysql数据库

    建表

    所需数据库的表的字段必须在excel表中存在;
    在这里插入图片描述
    另存为csv, csv默认为逗号制表符
    在这里插入图片描述
    点击是
    在这里插入图片描述

    然后用记事本打开另存为utf-8编码格式,做这一步之前最好先把要修改的都修改好,否则当保存为utf-8编码格式之后,再修改然后直接保存会导致编码格式退回原来的编码格式;
    在这里插入图片描述
    否则导入的时候在这里插入图片描述


    注意列名不能有中文,列名必须是英语*

    在这里插入图片描述

    否则同样会出现
    在这里插入图片描述
    可能数据库需要先读取判断前面的字段;

    数据库

    登录mysql workbench创建数据库并建表

    然后导入
    在这里插入图片描述
    选择对应的csv文件
    在这里插入图片描述
    source Colum是excel表中的属性,DestColumn是数据库表中的属性,对好相应的值之后一直next;
    在这里插入图片描述
    然后就导入成功了。
    在这里插入图片描述

    展开全文
  • 在上期《分享两个用Excel处理数据的神技巧》中,我们重点讲了 vlookup 函数和透视表功能,今天再来给大家介绍几个非常实用的技能。数据分析一般通过 SQL 在数据库中提取数据,保存到本地 Excel,所以 Excel 是最基础...
  • 我的意思是如果我一个窗体界面的话,可以添加一个删除按钮,当选中某一条记录的时候,单击删除按钮可以调用ADO或者SQL删除掉数据库中的记录,但是我现在的数据显示界面是EXCEL界面,在EXCEL中提供了删除一行的...
  • 如何excel导入到oracle数据库

    千次阅读 2013-09-28 10:34:22
    将google earth上面的数据保存成kml格式,看了一下就是xml文件,里面有包含经纬度的信息,用excel可以提取其中的经纬度节点的信息,用excel提取之后怎么将其导入到数据中对应字段中呢?具体方法如下: 转自:...
  • 导据不一定要OPENSET函数以更简单的方法,步骤如下:1、双击打sqlserver,右击需要导入数据的数据库,如图所示。2、点击任务,再点击任务中的导入数据选项,打开导入导出数据向导界面。3、在向导界面点击下一步...
  • 数据分析第一步,一定是先从数据库提取数据基本的描述统计分析,整体查看做到心中有数,而80%的描述统计需要SQL尝试取数后,或放到Excel或其他Tableau等工具,待基本了解数据整体现状之后,才会上模型上算法,去...
  • 最近的工作涉及到把excel数据导入到mysql数据库中, 看来一些mysqlimport, phpmyadmin命令, 但是不怎么会. 就决定自己写脚本解决. 先把excel数据文件保存成csv格式的文件, 然后写了下面的简单perl脚本倒入...
  • 因此,在安装Excel服务器时,会产生错误。可采用以下方式来修改验证方式和sa的口令: 一、修改验证方式 勤哲Excel服务器仅支持混合验证方式。 1.?点击“开始”-“运行”,输入regedit,回车: 点击“确定” 2.找
  • 我知道解析excel可以poi,上传可以fileupload,但这是我从网上查资料知道的,我没有实际过什么项目,所以就算知道要什么方法,逻辑也整理不出来,所以请懂这方面的大神帮帮忙,求源码。谢谢
  • 林骥 来源:林骥Oneoldwatch,likebrief python我在使用 Python 之前,数据分析工作的流程,一般是先打开数据库客户端,然后运行一段写好的 SQL 语句,把数据查询出来,然后再把数据复制到 Excel 中并制作报表。...
  • 如何Excel数据批量导入SQL数据库

    千次阅读 2009-07-13 08:53:00
    很多人通过循环来拼接sql,这样不但容易出错而且效率低下,System.Data.SqlClient.SqlBulkCopy 对于新手来说还是比较陌生的,这个就是传说中效率极高的bcp,6万多数据从excel导入到sql只需要4.5秒。Code:using ...
  • 这个要看下具体格式,如果只是将数据库中的明细数据逐条导出到 excel 中的话,这个直接使用开源的 poi 就行,具体可以直接百度下,但是这种实际上没多大意义,大多数的需求是要求按照特定的格式导出,比如订单信息表...
  • ![图片说明]...姓名根据标题中的部门从数据库中读取,OK 序号自动排列 如何根据标题中的年、月字段自动显示日期、星期,以及各日期列对应的出勤状态如何实现
  • 想来大家都有这样的生活常识,一个正常人一顿能吃三个...所以我们一般的做法是把百万级的数据导入到数据库中去,然后用数据库做处理。可是现在问题来了,我们如何把几百万条数据直接导入到数据库里面去? 常规的Excel
  • 今天在一个将excel数据导入数据库的程序时,由于数据量大,准备采用jdbc的批量插入。于是了preparedStatement.addBatch();当加入1w条数据时,再执行插入操作,preparedStatement.executeBatch()。我原以为这样会...
  • 之前听朋友吐槽过,他们是上千人的企业,但做数据分析居然还是靠手动上传数据,而且还是excel做的。...既然说到Excel做数据分析,那就先看看excel是如何分析数据的 一般接触信息化和数据库系统,过程中需要帮
  • 数据库excel中存在两列数据,比如a对应b,a对应c,b对应c。自动实现生成图形化,方框和箭头表示,数据不重复。应该怎么

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 282
精华内容 112
关键字:

如何用excel做数据库