SQL SERVER 和ACCESS的数据导入导出
//批量导入Access
string
filepath = Server.MapPath(
"student.mdb"
);
string
connaccess =
"Provider=Microsoft.Jet.OLEDB.4.0;Data Source='"
+ filepath +
"'"
;
string
access =
"select * from [student]"
;
OleDbConnection oconn =
new
OleDbConnection(connaccess);
oconn.Open();
OleDbDataAdapter myCommand =
new
OleDbDataAdapter(access, oconn);
DataSet ds =
new
DataSet();
myCommand.Fill(ds,
"xxx"
);
oconn.Close();
foreach
(DataRow dr
in
ds.Tables[
"xxx"
].Rows)
{
string
xx1 = dr[
"xx1"
].ToString().Replace(
" "
,
""
);
string
xx2= dr[
"xx2"
].ToString();
string
xx3= dr[
"xx3"
].ToString();
string
xx4= dr[
"xx4"
].ToString();
string
xx5= dr[
"xx5"
].ToString();
DateTime xx6= DateTime.Parse(dr[
"xx6"
].ToString());
string
xx7= dr[
"xx7"
].ToString();
DateTime xx8= DateTime.Parse(dr[
"xx8"
].ToString());
string
xx9=
""
;
string
xx10=
"-"
;
string
xx11=
"-"
;
string
xx12=
"-"
;
string
xx13=
"-"
;
string
xx14=
"-"
;
string
xx15=
"-"
;
DateTime straddtime = DateTime.Now;
try
{
string
strconn =
"server=xx;database=xx;uid=xx;pwd=xx;"
;
string
strSQL =
"insert into cha_info(xx1,xx2,xx3,xx4,xx5,xx6,xx7,xx8,xx9,xx10,xx11,xx12,xx13,xx14,xx15,时间) select '"
+ xx1+
"','"
+ xx2+
"','"
+ xx3+
"','"
+ xx4+
"','"
+ xx5+
"','"
+ xx6+
"','"
+ xx7+
"','"
+ xx8+
"','"
+ xx9+
"','"
+ xx10+
"','"
+ xx11+
"','"
+ xx12+
"','"
+ xx13+
"','"
+ xx14+
"','"
+ xx15+
"','"
+ straddtime +
"' where '"
+ xx2+
"' not in (select xx2 from 要插入的表) "
;
//where '" + xx2+ "' not in (select xx2 from 要插入的表)判断是否有重复
SqlConnection conn =
new
SqlConnection(strconn);
SqlCommand cmd =
new
SqlCommand(strSQL, conn);
conn.Open();
i = cmd.ExecuteNonQuery();
conn.Close();
}
catch
(Exception ex)
{
throw
ex;
}
使用DTS向导迁移你的Access数据到SQL Server,你可以使用这些步骤:
1在SQL SERVER企业管理器中的Tools(工具)菜单上,选择Data Transformation
2Services(数据转换服务),然后选择 czdImport Data(导入数据)。
3在Choose a Data Source(选择数据源)对话框中选择Microsoft Access as the Source,然后键入你的.mdb数据库(.mdb文件扩展名)的文件名或通过浏览寻找该文件。
4在Choose a Destination(选择目标)对话框中,选择Microsoft OLE DB Prov ider for SQL Server,选择数据库服务器,然后单击必要的验证方式。
5在Specify Table Copy(指定表格复制)或Query(查询)对话框中,单击Copy tables(复制表格)。
6在Select Source Tables(选择源表格)对话框中,单击Select All(全部选定)。下一步,完成。
Transact-SQL语句进行导入导出:
1. 在SQL SERVER里查询access数据:
-- ======================================================
SELECT *
FROM OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\DB.mdb";User ID=Admin;Password=")...表名
-------------------------------------------------------------------------------------------------
2. 将access导入SQL server
-- ======================================================
在SQL SERVER 里运行:
SELECT *
INTO newtable
FROM OPENDATASOURCE ("Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\DB.mdb";User ID=Admin;Password=" )...表名
-------------------------------------------------------------------------------------------------
3. 将SQL SERVER表里的数据插入到Access表中
-- ======================================================
在SQL SERVER 里运行:
insert into OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source=" c:\DB.mdb";User ID=Admin;Password=")...表名
(列名1,列名2)
select 列名1,列名2 from sql表
实例:
insert into OPENROWSET("Microsoft.Jet.OLEDB.4.0",
"C:\db.mdb";"admin";"", Test)
select id,name from Test
INSERT INTO OPENROWSET("Microsoft.Jet.OLEDB.4.0", "c:\trade.mdb"; "admin"; "", 表名)
SELECT *
FROM sqltablename
-------------------------------------------------------------------------------------------------
二、 SQL SERVER 和EXCEL的数据导入导出
1、在SQL SERVER里查询Excel数据:
-- ======================================================
SELECT *
FROM OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0")...[Sheet1$]
下面是个查询的示例,它通过用于 Jet 的 OLE DB 提供程序查询 Excel 电子表格。
SELECT *
FROM OpenDataSource ( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0")...xactions
-------------------------------------------------------------------------------------------------
2、将Excel的数据导入SQL server :
-- ======================================================
SELECT * into newtable
FROM OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\book1.xls";User ID=Admin;Password=;Extended properties=Excel 5.0")...[Sheet1$]
实例:
SELECT * into newtable
FROM OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\Finance\account.xls";User ID=Admin;Password=;Extended properties=Excel 5.0")...xactions
-------------------------------------------------------------------------------------------------
3、将SQL SERVER中查询到的数据导成一个Excel文件
-- ======================================================
T-SQL代码:
EXEC master..xp_cmdshell "bcp 库名.dbo.表名out c:\Temp.xls -c -q -S"servername" -U"sa" -P"""
参数:S 是SQL服务器名;U是用户;P是密码
说明:还可以导出文本文件等多种格式
实例:EXEC master..xp_cmdshell "bcp saletesttmp.dbo.CusAccount out c:\temp1.xls -c -q -S"pmserver" -U"sa" -P"sa""
EXEC master..xp_cmdshell "bcp "SELECT au_fname, au_lname FROM pubs..authors ORDER BY au_lname" queryout C:\ authors.xls -c -Sservername -Usa -Ppassword"
在VB6中应用ADO导出EXCEL文件代码:
Dim cn As New ADODB.Connection
cn.open "Driver={SQL Server};Server=WEBSVR;DataBase=WebMis;UID=sa;WD=123;"
cn.execute "master..xp_cmdshell "bcp "SELECT col1, col2 FROM 库名.dbo.表名" queryout E:\DT.xls -c -Sservername -Usa -Ppassword""
-------------------------------------------------------------------------------------------------
4、在SQL SERVER里往Excel插入数据:
-- ======================================================
insert into OpenDataSource( "Microsoft.Jet.OLEDB.4.0",
"Data Source="c:\Temp.xls";User ID=Admin;Password=;Extended properties=Excel 5.0")...table1 (A1,A2,A3) values (1,2,3)
T-SQL代码:
INSERT INTO
OPENDATASOURCE("Microsoft.JET.OLEDB.4.0",
"Extended Properties=Excel 8.0;Data source=C:\training\inventur.xls")...[Filiale1$]
(bestand, produkt) VALUES (20, "Test")
SQL SERVER 和ACCESS的数据导入导出的更多相关文章
- SQL Server Bulk Insert批量数据导入
SQL Server的Bulk Insert语句可以将本地或远程的数据文件批量导入到数据库中,速度非常的快.远程文件必须共享才行,文件路径须使用通用约定(UNC)名称,即"\\服务器名或IP ...
- SQL Server表结构和数据导入到MySQL
借助的工具:Navicat for MySQL,链接:http://pan.baidu.com/s/1kVCw8IF 密码:g927 可以很明确的肯定,主键和自增列是没办法导入的,只能是表结构和数据. ...
- SQL SERVER 与ACCESS、EXCEL的数据导入导出转换
* 说明:复制表(只复制结构,源表名:a 新表名:b) select * into b from a where 1<>1 * 说明:拷贝表(拷贝数据,源表名:a 目标表名:b) ...
- SQL SERVER 和ACCESS、EXCEL的数据导入导出
SQL SERVER 与ACCESS.EXCEL之间的数据转换SQL SERVER 和ACCESS的数据导入导出[日期:2007-05-06] 来源:Linux公社 作者:Linux 熟 悉 ...
- SQL SERVER 与ACCESS、EXCEL的数据转换
--Excel导入到SQL的一个新思路: /*比如Excel有两列,A列和B列需要导入到SQL表中,反正我已经有几年不用DTS之类的工具了. 在Excel中的新的一列中,直接写公式 =CONCATEN ...
- SQL Server 之 在数据库之间进行数据导入导出
1.同一服务器上数据库之间进行数据导入导出 (1).使用 SELECT INTO 导出数据 在SQL Server中使用最广泛的就是通过SELECT INTO语句导出数据,SELECT INTO语句同 ...
- SQL Server数据导入导出的几种方法
在涉及到SQL Server编程或是管理时一定会用到数据的导入与导出, 导入导出的方法有多种,结合我在做项目时的经历做一下汇总: 1. SQL Server导入导出向导,这种方式是最方便的. 导入向导 ...
- Database基础(三):SQL数据导入/导出、 操作表记录、查询及匹配条件
一.SQL数据导入/导出 目标: 使用SQL语句完成下列导出.导入操作: 将/etc/passwd文件导入userdb库userlist表并给每条记录加编号 将userdb库userlist表中UID ...
- 关于 Oracle 的数据导入导出及 Sql Loader (sqlldr) 的用法
在 Oracle 数据库中,我们通常在不同数据库的表间记录进行复制或迁移时会用以下几种方法: 1. A 表的记录导出为一条条分号隔开的 insert 语句,然后执行插入到 B 表中2. 建立数据库间的 ...
随机推荐
- 添加thrust的库后出错
在添加thrust库中的host_vector.h等头文件时 C:\NVIDIA\cudatoolkit\include\thrust\detail\config中的debug.h一直出问题,因此注释 ...
- JavaScript基础——创建函数
JavaScript的最重要的一个部分是制作其他代码可以重用的代码.要做到这一点,你可以把代码组织成执行特定任务的函数.函数是结合在一个单一的块中,并给予一个名称的一系列代码语句.然后,你就可以通过引 ...
- Android Studio 生成Jar包时遇到的gradlew下载问题
网上介绍说使用gradlew打包jar,可是输入gradlew makeJar后就开始download XXX.zip,但是等了很久都没有完成.解决办法如下: 原文:http://blog.csdn ...
- SVN 操作指南
1.安装 和 使用 2.导入导出 2.错误信息 ① svn不知到这样的主机
- Metrics介绍
Metrics可以为你的代码的运行提供无与伦比的洞察力.作为一款监控指标的度量类库,它提供了很多模块可以为第三方库或者应用提供辅助统计信息, 比如Jetty, Logback, Log4j, Apac ...
- Java Hour 62 J2EE App 服务器
目前略微瓶颈了,准备换工作. tomcat.weblogic.jboss的区别,容器的作用 Apache 是一个http 服务器. Tomcat 是一web 应用程序服务器,支持部分的j2ee. Jb ...
- hdu 4036 2011成都赛区网络赛F 模拟 **
为了确保能到达终点,我们需要满足下面两个条件 1.能够到达所有山顶 2.能够在遇到苦土豆时速度大于他 二者的速度可以用能量守恒定律做,苦土豆的坐标可通过三角形相似性来做 #include<cst ...
- hdu 4025 2011上海赛区网络赛E 压缩 ***
直接T了,居然可以这么剪枝 题解链接:点我 #include<cstdio> #include<map> #include<cstring> #define ll ...
- Eclipse查看JDK源码
设置 点 "window"-> "Preferences" -> "Java" -> "Installed JR ...
- Linux学习笔记(16)shell基础之Bash变量
1. 用户自定义变量 (1)变量设置规则 ① 变量名称可由字母.数字和下划线组成,但不能以数字开头: ② 变量的默认类型为字符串类型,如果要对数值运算,则必须指定变量类型为数值型: ③ 变量用等号连接 ...