方法一:右键点你要导入的数据库,点所有任务,点导入导出数据,选导入。复制设置对话框里面选择excel 97-2000。接下来很容易。
这种方法的缺点是你导入的表会在数据库中新生成一张表。。。
方法二:使用数据源。不推荐使用这个,因为这种方法属于化简为繁。。。
方法三:打开SQL的企业管理器,点开服务器节点,里面有一个数据转换服务,点开,选Meta Data Service 包。新建一个包。点开包进去编辑。里面可以建立EXCEL电子表格与数据库内部相应表格的链接。接下来的问题就很容易了。你设置一些选项就OK了。
1、直接用Sql语句查询
2、先用excle中的数据生成xml文件,再把xml导入数据库
第一种方法(方法二以后再试),找到联机丛书里实现此功能的Sql语句如下:
SELECT
FROMOpenDataSource('MicrosoftJetOLEDB40',
'DataSource="c:Financeaccountxls";UserID=Admin;Password=;Extendedproperties=Excel50')xactions
语句是有了,但我还是试了很久,因为各个参数具体该怎么设置它没有说。Data
Source就是excel文件的路径,这个简单;UserId、Password和Extended
properties这三个属性我改成了各种各样的与本机有关的用户名、密码以及excel版本都不对,最后用上面例子里的值“User
ID=Admin;Password=;Extended
properties=Excel
50”才成功了,晕啊;最后个“xactions”更是查了很多资料,其实就仅仅是excel文件里所选的工作表名而已,怪我对excel不够熟悉了,另外注意默认的Sheet1要写成[Sheet1$]
最后,看看我成功的测试
数据库里建好一个表testTable_1,有5个字段id,
name,
date,
money,
content,C盘下book1xls文件的sheet1工作表里写好对应的数据并设好数据类型,执行如下插入语句:
insertintotestTable_1([name],[date],[money],[content])
Select[姓名],[日期],[金额],[内容]
FROMOpenDataSource('MicrosoftJetOLEDB40',
'DataSource="C:Book1xls";
UserID=Admin;Password=;Extendedproperties=Excel50')[Sheet1$]
select里的列名我一开始用代替,但发现输出顺序与我预期的不同,是“金额、内容、日期、姓名”,不知道具体有什么规律,就老老实实写名字了。 *** 作成功
回过头来看看市场部的要求,假设在我这张表里实现,可以先判断如excel里存在与记录相同的name字段(name要唯一非空)时就删除记录,之后再插入,这样简单,但自增的id字段会因为插入而改变,那是不行的了。可行的方法是先读出excel里全部记录,然后用游标一条条分析,如果存在这个name就更新否则就插入。OK,下次就不用让他们再对着文档一条条Update了
、打企业管理器打要导入数据数据库表按右键所任务--导入数据dDTS导入/导向导按
步
2、选择数据源
Microsoft
Excel
97-2000文件名
选择要导入xls文件按
步
3、选择目
用于SQL
Server
Microsoft
OLE
DB提供程序服务器选择本(本数据库
VVV)使用
SQL
Server身份验证用户名sa密码空数据库选择要导入数据数据库(
client)按
步
4、选择
用条查询指定要传输数据按
步
5、按
查询器源表列表要导入xls文件列各列加入右边
选列
列表步定要注意加入列顺序定要与数据库字段定义顺序相同否则错按
步
6、选择要数据进行排列顺序步选择列查询语句
order
by
面所跟列按
步
7、要全部导入则选择
全部行按
步
8、则看根据前面 *** 作查询语句确认误按
步
9、看
表/工作表/Excel命名区域
列表
目
列选择要导入数据表按
步
10、选择
立即运行按
步
11、看整 *** 作摘要按
完
即
以上就是关于如何用excel导入导出数据库全部的内容,包括:如何用excel导入导出数据库、如何把Excel表中数据导入数据库、excel表格如何导入数据库中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)