如何将excel中的数据实时保存至mssql数据库?

rjghz 2009-11-15 02:57:06
假设有两张表,t1 t2
t1:id 字段1 字段2 字段3
t2:id 字段4 字段5 字段6

现用一条查询语句select t1.*,t2.* from t1,t2 where t1.id=t2.id and 条件……
将符合条件的数据从mssql数据库中导出至excel表中。

我想问的,可否实现这样的功能或实现该功能的excel插件?如若数据在excel在改动,可否将改动的数据直接保存至mssql数据库。

比如。表t1 t2 各字段均为int值。
导出至excel的数值为1 2 3 4 5 6

现在我只要在excel表中将数值全部改为9,然后点下保存,mssql数据库各字段的值也改为9了。
...全文
444 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
ChinaJiaBing 2009-12-06
  • 打赏
  • 举报
回复



-------在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')

oopp1234567890 2009-12-04
  • 打赏
  • 举报
回复
可以

SSIS WMI

推荐:
http://blog.csdn.net/jinjazz/archive/2008/07/29/2730135.aspx
863922230 2009-12-04
  • 打赏
  • 举报
回复
牛,ctrl~c,ctrl~v都能用上
dollyxz 2009-12-04
  • 打赏
  • 举报
回复
建议这样做,可以将改动过的文件另存到某个被监控的文件甲下,这样在做个程序做插入数据库即可。
hchjjun 2009-12-02
  • 打赏
  • 举报
回复
牛,ctrl~c,ctrl~v都能用上
rjghz 2009-11-25
  • 打赏
  • 举报
回复
[Quote=引用 12 楼 icelovey 的回复:]
引用 11 楼 rjghz 的回复:
没有办法吗?各位!
主要是我的工作经常要对多表进行联合查询,然后把查询出来的结果导入到EXCEL表中。

根据实际情况,这些查询内容和实际工作情况又不一定相符(如金额、人名、地名等等),有时候很多,如果可以在EXCEL批量修改好,再批量保存进数据库就可以很大程度上提高工作效率。

用本系统写的软件,还要一个一个打开个案修改,烦死了。

适时的话不太可能, 除非写VBA,不过这个不懂。。
要不写个存储过程, 你改完之后, 运行一下那个存储过程, 这个倒是比较靠谱的!
[/Quote]

怎么写??

不太知道.

比如有两表.表a包括id、姓名,表B包括id、金额
查询select a.*,b.* from a,b where a.id=b.id
把这一查询结果导入EXCEL后。
根据实际工作情况,金额和姓名有出入的(有时候工作人员录错信息等等),在EXCEL改过正确的数据后,又需要将EXCEL的真实情况批量保存进数据库。
SuqianHome 2009-11-25
  • 打赏
  • 举报
回复
可以的,直接在Excel Ctrl+C 然后再数据库里Ctrl+V
icelovey 2009-11-24
  • 打赏
  • 举报
回复
[Quote=引用 11 楼 rjghz 的回复:]
没有办法吗?各位!
主要是我的工作经常要对多表进行联合查询,然后把查询出来的结果导入到EXCEL表中。

根据实际情况,这些查询内容和实际工作情况又不一定相符(如金额、人名、地名等等),有时候很多,如果可以在EXCEL批量修改好,再批量保存进数据库就可以很大程度上提高工作效率。

用本系统写的软件,还要一个一个打开个案修改,烦死了。
[/Quote]
适时的话不太可能, 除非写VBA,不过这个不懂。。
要不写个存储过程, 你改完之后, 运行一下那个存储过程, 这个倒是比较靠谱的!
rjghz 2009-11-24
  • 打赏
  • 举报
回复
没有办法吗?各位!
主要是我的工作经常要对多表进行联合查询,然后把查询出来的结果导入到EXCEL表中。

根据实际情况,这些查询内容和实际工作情况又不一定相符(如金额、人名、地名等等),有时候很多,如果可以在EXCEL批量修改好,再批量保存进数据库就可以很大程度上提高工作效率。

用本系统写的软件,还要一个一个打开个案修改,烦死了。
贝隆 2009-11-15
  • 打赏
  • 举报
回复
把Excel的内容一行一行的插入数据库,使用循环对行读取。
-狙击手- 2009-11-15
  • 打赏
  • 举报
回复

到这儿问:http://club.excelhome.net/forum-2-1.html
--小F-- 2009-11-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 rjghz 的回复:]
其实就是把excel当作应用程序终端来操作数据库。在excel中修改,删除,增加等数据,然后mssql中的数据也跟着相应变化。

可否有这样的插件实现这样的功能?

不胜感激。。
[/Quote]

这个有难度 因为一般来说 在SQL中操作文件 都需要保持文件处于关闭状态
netcup 2009-11-15
  • 打赏
  • 举报
回复
不行,SQL从EXCEL中读取数据的话,要求该EXECL文件必须关闭,不能同时打开EXCEL和向SQL攫取数据。
  • 打赏
  • 举报
回复
如果实时性要求不是很高的话,可以做个任务,从excel中读取数据。
feixianxxx 2009-11-15
  • 打赏
  • 举报
回复
。。。。。。
不懂up
rjghz 2009-11-15
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 sql77 的回复:]
引用 2 楼 rjghz 的回复:
其实就是把excel当作应用程序终端来操作数据库。在excel中修改,删除,增加等数据,然后mssql中的数据也跟着相应变化。

可否有这样的插件实现这样的功能?

不胜感激。。

呵呵,不知道
[/Quote]

要是有这样的excel插件就好了,就不用开发什么程序,又弄什么乱七八糟的控件界面,全部直接在excel搞定。
SQL77 2009-11-15
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 rjghz 的回复:]
其实就是把excel当作应用程序终端来操作数据库。在excel中修改,删除,增加等数据,然后mssql中的数据也跟着相应变化。

可否有这样的插件实现这样的功能?

不胜感激。。
[/Quote]
呵呵,不知道
rjghz 2009-11-15
  • 打赏
  • 举报
回复
其实就是把excel当作应用程序终端来操作数据库。在excel中修改,删除,增加等数据,然后mssql中的数据也跟着相应变化。

可否有这样的插件实现这样的功能?

不胜感激。。
SQL77 2009-11-15
  • 打赏
  • 举报
回复
那人为什么不弄个数据库来存储呀

27,580

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧