如何向mysql中批量插入数据

如何向mysql中批量插入数据,第1张

drop procedure if exists s_card

delimiter $$

CREATE PROCEDURE s_card()

BEGIN

DECLARE j INT(11)

loop1: WHILE j<=1000 DO

insert INTO `tablename`(xxxxxx) values (xxx)

SET j=j+1

END WHILE loop1

END$$

delimiter

把上面存储过程运行一下,输入 call s_card()可以循环插入1000条数据

如果要指定输入条数可以把数字从外界传入

不用INSERT INTO 难不成用UPDATE,数据导入3000条貌似不多吧

你要这么一说,还真有点难度了,因为数据类型不一样,还不能用数组,貌似没有什么绝窍

不过你可以直接用EXCEL中的CONCATENATE()函数把你的数据转换成SQL输入语句

然后把这个输入语句脚本放到一个文件中,如Iinsert.sql

接着用类似下面的代码把这个脚本导入MYSQL执行

  !$db->select_db('databasename')&&exit($db->error())       //选择当前数据库

  if(!file_exists("./insert.sql"))exit("载入\"insert.sql\"失败!")

  $import_sql=file_get_contents("pms.sql",dirname(__FILE__))    //打开SQL文件并读取

  $explode = explode("",$import_sql)

  $cnt = count($explode)

  for($i=0$i<$cnt $i++){

    !$db->query($explode[$i])&&exit("导入数据表失败!")

  }

  echo "已建立数据表...<br><br>\n"

把EXCEL数据导入到MYSQL吗,是不是这个要求?

第一步,把EXCEL数据转换为TXT(记事本)文件

打开EXCEL,全选数据(如果第一行是标题可能不需要),复制,打开记事本,粘贴,保存为一个文件,例如ABC.TXT。

第二步,执行MYSQL语句把TXT文件导入数据库

执行MYSQL后,在>提示符下输入下面的语句就可以导入数据:

load

data

infile

'e:/insur/reser/from_cbps8/prem_y18.txt'

into

table

premium_rate

你需要修改文件名的完整路径,以及导入数据库的表名,可能之前要使用use语句选择数据库。这样的导入是把数据添加到数据库中。


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

原文地址: http://outofmemory.cn/zaji/8370334.html

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

发表评论

登录后才能评论

评论列表(0条)

保存