要将sql server数据库中的数据全部导入到mysql数据库中,其方法有多种。
利用mysql ODBC把SQL Server中数据库中的数据导入到MySQL中 。
第一步:安装mysql ODBC;
去相关的网站下载mysql ODBC进行安装。
第二步:建立MySQL的DSN;
在控制面板——>管理工具——>数据源 (ODBC)中建立MySQL的DSN。
例如: Data Source Name: MySQL DSN
Server: localhost
User: root
Password: root
Database: mysql
第三步:SQL Server中,选择要导出的数据库,右键选择All Tasks->Export Datas 开始DTS Export Wizerd。
第四步:Choose a Data Source;
例如:Data Source: Microsoft OLE DB Provider for SQL Server
Server: 1164013
Username: admin
Password: admin
Database: ORDER
第五步:Choose a Destination。
例如:Data Source: MySQL ODBC 315 Driver
User/System DSN: MySQL DSN
Username: root
Password: root
第六步:Select Source Table。
第七步:Run immediately,下一步再选完成,就开始转换。
导出数据库命令:
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
Java程序向数据库中插入数据,代码如下:
//首先创建数据库,(aess,oracle,mysql,sqlsever)其中之一,其中aess,sqlsever需要配置数据源(odbc);
//然后再eclipse中创建类(ConnDb,Test,TestBean)ConnDb功能为连接数据库,查询,插入,删除,修改数据的类,Test为含有main方法的测试类,TestBean为数据表中的字段属性及set,get方法
//以下是ConnDb代码:
packagedb;
importjavasqlConnection;
importjavasql;
import
javasqlResultSet;
importjavasql;
import
javasqlStatement;
importjavautilArrayList;
publicclassConnDb{
publicConnectionstartConn(Connectionconn){
try{
ClassforName("sunjdbcodbc");
conn=("jdbc:odbc:数据库","用户名","密码");
}catch(Exceptione){
Systemoutprintln("连接数据库时出现错误");
}
returnconn;
}
publicArrayList(Stringsql){
Connectionconn=null;
Statementstmt=null;
ResultSetrs=null;
ArrayListlist=newArrayList();
try{
conn=startConn(conn);
stmt=conn();
rs=stmt(sql);//sql为sql语句例如"selectfrom
表名",从main方法中传进来,这里用的是ArrayList类将查询结果存储起来
while(rsnext()){
TestBeantb=newTestBean();
tbsetTid(rsgetString("tid"));
tbsetTname(rsgetString("tname"));
tbsetTinfo(rsgetString("tinfo"));
listadd(tb);
}
}
catch(e){
//TODOAuto-generatedcatchblock
e();
}finally{
closeConn(rs,stmt,conn);
}
returnlist;
}
publicvoid(Stringsql){
Connectionconn=null;
Statementstmt=null;
try{
conn=
startConn(conn);
stmt=conn();
stmt(sql);
}
catch(e){
Systemoutprintln("修改,插入或者删除数据库数据时发生错误!");
}finally{
closeConn(stmt,conn);
}
}
publicvoidcloseConn(ResultSetrs,Statementstmt,Connectionconn){
try{
if(rs!=
null){
rsclose();
}
if(stmt!=null){
stmtclose();
}
if(conn!=null){
connclose();
}
}
catch(e){
//TODOAuto-generatedcatch
block
Systemoutprintln("关闭数据库的时候发生错误!");
}
}
publicvoidcloseConn(Statementstmt,Connectionconn){
try{
if(stmt!=null){
stmtclose();
}
if(conn!=null){
connclose();
}
}
catch(e){
//TODOAuto-generatedcatchblock
Systemoutprintln("关闭数据库的时候发生错误!");
}
}
}
以上就是关于sqlserver数据库怎么导入mysql的数据表全部的内容,包括:sqlserver数据库怎么导入mysql的数据表、数据库的导入与导出、java中怎么向数据库插入数据(java怎么导入数据库)等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)