MySQL数据库 写入大量数据如何实现

MySQL数据库 写入大量数据如何实现,第1张

//最快的方法 10000记录 23MS

public static void insert() {  

        // 开时时间  

        Long begin = new Date().getTime()  

        // sql前缀  

        String prefix = "INSERT INTO tb_big_data (count, create_time, random) VALUES "  

        try {  

            // 保存sql后缀  

            StringBuffer suffix = new StringBuffer()  

            // 设置事务为非自动提交  

            conn.setAutoCommit(false)  

            // Statement st = conn.createStatement()  

            // 比起st,pst会更好些  

            PreparedStatement pst = conn.prepareStatement("")  

            // 外层循环,总提交事务次数  

            for (int i = 1 i <= 100 i++) {  

                // 第次提交步长  

                for (int j = 1 j <= 10000 j++) {  

                    // 构建sql后缀  

                    suffix.append("(" + j * i + ", SYSDATE(), " + i * j  

                            * Math.random() + "),")  

                }  

                // 构建完整sql  

                String sql = prefix + suffix.substring(0, suffix.length() - 1)  

                // 添加执行sql  

                pst.addBatch(sql)  

                // 执行 *** 作  

                pst.executeBatch()  

                // 提交事务  

                conn.commit()  

                // 清空上一次添加的数据  

                suffix = new StringBuffer()  

            }  

            // 头等连接  

            pst.close()  

            conn.close()  

        } catch (SQLException e) {  

            e.printStackTrace()  

        }  

        // 结束时间  

        Long end = new Date().getTime()  

        // 耗时  

        System.out.println("cast : " + (end - begin) / 1000 + " ms")  

    }

一.使用php

excel

parser

pro软件,但是这个软件为收费软件;

二.可将excel表保存为csv格式,然后通过phpmyadmin或者sqlyog导入,sqlyog导入的方法为:

·将excel表另存为csv形式;

·打开sqlyog,对要导入的表格右击,点击“导入”-“导入使用加载本地csv数据”;

·在d出的对话框中,点击“改变..”,把选择“填写excel友好值”,点击确定;

·在“从文件导入”中选择要导入的csv文件路径,点击“导入”即可导入数据到表上;

三.一个比较笨的手工方法,就是先利用excel生成sql语句,然后再到mysql中运行,这种方法适用于excel表格导入到各类sql数据库:

·假设你的表格有a、b、c三列数据,希望导入到你的数据库中表格tablename,对应的字段分别是col一、col二、col三

·在你的表格中增加一列,利用excel的公式自动生成sql语句,具体方法如下:

一)增加一列(假设是d列)

二)在第一行的d列,就是d一中输入公式:

=concatenate("insert

into

tablename

(col一,col二,col三)

values

(",a一,",",b一,",",c一,")")

三)此时d一已经生成了如下的sql语句:

insert

into

table

(col一,col二,col三)

values

('a','一一','三三')

四)将d一的公式复制到所有行的d列(就是用鼠标点住d一单元格的右下角一直拖拽下去啦)

5)此时d列已经生成了所有的sql语句

陆)把d列复制到一个纯文本文件中,假设为sql.txt

·把sql.txt放到数据库中运行即可,你可以用命令行导入,也可以用phpadmin运行


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/6782451.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-03-28
下一篇 2023-03-28

发表评论

登录后才能评论

评论列表(0条)

保存