怎样将SQL数据导出到EXCEL中

怎样将SQL数据导出到EXCEL中,第1张

在SQL数据库的很多应用场景中,需要将SQL中的某个数据库或查询的结果导出到EXCEL中,因为Excel更容易对数据处理和方便用户邮箱传输。本次经验归纳了SQL数据表导出到EXCEL中的三种方法:

1、复制粘贴,将SQL查询语句按指定条件导出数据;——适合小量数据。

2、导出完整的SQL数据表为Excel文件;——适合大量数据。

3、定时自动导出指定SQL数据表为Excel文件;——适合大量数据。

>

2、先来查询一下这个表中的数据,如下图所示,接下来就会对这些数据进行导出

3、在查询结果的空白处右键单击,选择将结果另存为选项,如下图所示

4、这个时候会d出保存界面,会看到文件类型那里是CSV类型,这个也是excel中的一种

5、导出以后打开导出文件,就会看到查询的结果都在excel文件里了,如下图所示

在mysql中导入/导出超大的sql文本文件,我们可以使用很多方法实例,如有:客户端直接命令 *** 作,分块导入,客户端用source命令 *** 作等等。

在实际工作中,有时经常地时行mysql数据库的导入和导入 *** 作,但对于大型sql文件导入时,phpmyadmin是不行的,有太多限制,比如记录,内存等!

多种方案收集,如下:

方案一:客户端直接命令 *** 作(此方法是我比较喜欢的)

刚恢复一个电商网站mysql备份数据,此备份文件有300多M,因为phpmyadmin支持上传有限,文件太大IE停止响应,所以在本地用

代码如下

复制代码

mysql -u root -p root jiahuibuydb<

c:/yebihaisql

但没导入进去,出来一大堆mysql的参数提示,不认输入的命令参数,后来写成下面这个样子,就是去掉了参数和数据之间的空格

代码如下

复制代码

mysql -uroot -proot jiahuibuydb<

c:/yebihaisql

导入就OK了

导出命令:

a)导出整个库

mysqldump -u 用户名 -p 数据库名 > 导出的文件名

代码如下

复制代码

mysqldump -u root -p student

>d:/yebihaisql

b)导出一个表

mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名

方案二:分块导入

代码如下

复制代码

<

//用来快速Mysql的大数据备份

//使用前请首先按照代码注释修改要导入的SQL文件名、数据库主机名、数据库用户名、密码、数据库名

//同时将数据库文件和本文本一起ftp导网站目录,然后以web方式访问此文件即可

$file_name="sqlsql"; //要导入的SQL文件名

$dbhost="localhost"; //数据库主机名

$dbuser="user"; //数据库用户名

$dbpass="pass"; //数据库密码

$dbname="dbname";

//数据库名

set_time_limit(0); //设置超时时间为0,表示一直执行。当php在safe

mode模式下无效,此时可能会导致导入超时,此时需要分段导入

$fp = @fopen($file_name, "r") or

die("不能打开SQL文件 $file_name");//打开文件

mysql_connect($dbhost, $dbuser,

$dbpass) or die("不能连接数据库 $dbhost");//连接数据库

mysql_select_db($dbname)

or die ("不能打开数据库 $dbname");//打开数据库

mysql_query('set names utf8');

echo "正在执行导入 *** 作";

while($SQL=GetNextSQL()){

if

(!mysql_query($SQL)){

echo

"执行出错>

导出数据库命令:

mysqldump -u root -p mydb2 > e:\mydbsql

把数据库mydb2导出到e盘的mydbsql

注意:在dos下进入mysql安装的bin目录下,但是不要登陆。

导入数据库命令:

mysqldump -u root -p mydb2 < e:\mydbsql

把数据库e盘的mydbsql导入到mydb2

注意:要先新建mydb2 然后使用导入语句

oracle 用户创建 数据库的导入导出imp/exp

可以在SQLPLUSEXE或者DOS(命令行)中执行执行环境:可以在SQLPLUSEXE或者DOS(命令行)中执行,

DOS中可以执行时由于 在oracle 8i 中 安装目录ora81BIN被设置为全局路径,

该目录下有EXPEXE与IMPEXE文件被用来执行导入导出。

创建用户

给用户增加导入数据权限的 *** 作

第一,启动sqlpuls

第二,以system/manager登陆

第三,create user 用户名 IDENTIFIED BY 密码 (如果已经创建过用户,这步可以省略)

第四,GRANT CREATE USER,DROP USER,ALTER USER ,CREATE ANY VIEW ,

DROP ANY VIEW,EXP_FULL_DATABASE,IMP_FULL_DATABASE,

DBA,CONNECT,RESOURCE,CREATE SESSION TO 用户名字

第五, 运行-cmd-进入dmp文件所在的目录,

imp userid=system/manager full=y file=dmp

或者 imp userid=system/manager full=y file=filenamedmp

执行示例:

F:WorkOracle_Databackup>imp userid=test/test full=y file=inner_notifydmp 17jquerycom

下面介绍的是导入导出的实例。

数据导出:

1 将数据库TEST完全导出,用户名system 密码manager 导出到D:daochudmp中

exp system/manager@TEST file=d:daochudmp full=y

exp fang/fang@ORCL file=d:oais20100401dmp full=y

exp oais/oais@ORCL file=d:oais_mjdmp full=y

2 将数据库中system用户与sys用户的表导出

exp system/manager@TEST file=d:daochudmp owner=(system,sys)

3 将数据库中的表inner_notify、notify_staff_relat导出

exp aichannel/aichannel@TESTDB2 file= d:datanewsmgntdmp tables=(inner_notify,notify_staff_relat)

exp fang/fang@ORCL file=d:oais20100401_essmenudmp tables=(essmenu)

4 将数据库中的表table1中的字段filed1以"00"打头的数据导出

exp system/manager@TEST file=d:daochudmp tables=(table1) query=" where filed1 like '00%'"

上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。

也可以在上面命令后面 加上 compress=y 来实现。 一起jquery,17jquery

数据的导入

1 将D:daochudmp 中的数据导入 TEST数据库中。

imp system/manager@TEST file=d:daochudmp

imp aichannel/aichannel@HUST full=y file=d:datanewsmgntdmp ignore=y

上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。

在后面加上 ignore=y 就可以了。

2 将d:daochudmp中的表table1 导入

imp system/manager@TEST file=d:daochudmp tables=(table1)

基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。 MSSQL的导入导出有三种方法,不可以在cmd模式下进行:1使用Transact-SQL进行数据导入导出 我们很容易看出,Transact-SQL方法就是通过SQL语句方式将相同或不同类型的数据库中的数据互相导入导出或者汇集在一处的方法。如果是在不同的SQL Server数据库之间进行数据导入导出,那将是非常容易做到的。一般可使用SELECT INTO FROM和INSERT INTO。使用 SELECT INTO FROM时INTO后跟的表必须存在,也就是说它的功能是在导数据之前先建立一个空表,然后再将源表中的数据导入到新建的空表中,这就相当于表的复制(并不会复制表的索引等信息)。而INSERT INTO的功能是将源数据插入到已经存在的表中,可以使用它进行数据合并,如果要更新已经存在的记录,可以使用UPDATE。 SELECT INTO table2 FROM table1 --table1和table2的表结构相同 INSERT INTO table2 SELECT FROM table3 --table2和table3的表结构相同 当在异构数据库之间的进行数据导入导出时,情况会变得复杂得多。首先要解决的是如何打开非SQL Server数据库的问题。 在SQL Server中提供了两个函数可以根据各种类型数据库的OLE DB Provider打开并 *** 作这些数据库,这两个函数是OPENDATASOURCE和OPENROWSET。它们的功能基本上相同,不同之处主要有两点。 2 使用命令行BCP导入导出数据 很多大型的系统不仅仅提供了友好的图形用户接口,同时也提供了命令行方式对系统进行控制。在SQL Server中除了可以使用SQL语句对数据进行 *** 作外,还可以使用一个命令行工具BCP对数据进行同样的 *** 作。BCP是基于DB-Library 客户端库的工具。它的功能十分强大,BCP能够以并行方式将数据从多个客户端大容量复制到单个表中,从而大大提高了装载效率。但在执行并行 *** 作时要注意的是只有使用基于 ODBC 或 SQL OLE DB 的 API 的应用程序才可以执行将数据并行装载到单个表中的 *** 作。 BCP可以将SQL Server中的数据导出到任何OLE DB所支持的数据库的,如下面的语句是将authors表导出到excel文件中。 bcp pubsdboauthors out c:\temp1xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"password" BCP不仅能够通过命令行执行,同时也可以通过SQL执行,这需要一个系统存储过程xp_cmdshell来实现,如上面的命令可改写为如下形式。 EXEC masterxp_cmdshell 'bcp pubsdboauthors out c:\temp1xls -c -q -S"GNETDATA/GNETDATA" -U"sa" -P"password"' 3 使用数据转换服务(DTS)导入导出数据 DTS是SQL Server中导入导出数据的核心,它除有具有SQL和命令行工具BCP相应的功能外,还可以灵活地通过VBScript、JScript等脚本语言对数据进行检验、净化和转换。 SQL Server为DTS提供了图形用户接口,用户可以使用图形界面导入导出数据,并对数据进行相应的处理。同时,DTS还以com组件的形式提供编程接口,也就是说任何支持com组件的开发工具都可以利用com组件使用DTS所提供的功能。DTS在SQL Server中可以保存为不同的形式,可以是包的形式,也可以保存成Visual Basic源程序文件,这样只要在VB中编译便可以使用DTS com组件了。 DTS和其它数据导入导出方式最大的不同就是它可以在处理数据的过程中对每一行数据进行深度处理。以下是一段VBScript代码,这段代码在处DTS理每一条记录时执行,DTSDestination表示目标记录,DTSSource表示源记录,在处理“婚姻状况”时,将源记录中的“婚姻状况”中的0或1转换成目标记录中“已婚”或“未婚”。 Function Main() DTSDestination("姓名") = DTSSource("姓名") DTSDestination("年龄") = DTSSource("年龄") If DTSDestination("婚姻状况") = 1 Then DTSDestination("婚姻状况") = "已婚" Else DTSDestination("婚姻状况") = "未婚" End If Main = DTSTransformStat_OK End Function

/ 导出文本文件

EXEC masterxp_cmdshell ’bcp 表名 out c:\rytxt -c -Sservername -Usa -Ppassword’

别处看的,不知道 能不能用,希望能帮上楼主~~~

选择要导出SQL库,右击,然后选择所有任务,然后选择导出数据,进入到导入/导出向导

然后下一步,看看你的身份验证,如果你安装SQL的时候用的WIndows身份验证就选择WIndows身份验证,反之就用SQL

Server身份验证,然后填写用户名和密码,数据库:选择你要导出的数据库,然后点击下一步,然后在

目的

的下拉列表框中

选择Microsoft

Access,

选择要导入到的ACCESS数据库名,如果你的导入的这个ACCESS数据库,有用户名和密码,就输入下,接着下一步,接着下一步,选择你要导出的表,接着下一步,接着下一步,接着完成就可以了

以上就是关于怎样将SQL数据导出到EXCEL中全部的内容,包括:怎样将SQL数据导出到EXCEL中、急!如何将查询出来的sql数据库的数据导出EXCEL、如何在mysql中导入/导出超大的sql文本文件等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

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

原文地址:https://54852.com/sjk/10186684.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存