薪资系统的考勤部分需要把卡钟的刷卡数据DBF格式的数据转入到sqlserver的考勤表中,请问用C#该怎么写呀,如果有代码,将万分感谢!!
解决方案 »
- 怎么获取winform(C#)程序内webBrowser中flash post和get的数据?
- C# WinForm ClickOnce发布问题
- 如何获取鼠标旋转的角度大小和方向
- C#调C++写的DLL的结构体参数带TCHAR类型数组问题
- oracle的存储过程可以返回多个结果集吗?
- WPF中ListBox如何动态绑定图象?
- vs2008正式版以及中文版什么时候发布?
- 如何下载带有验证的网页
- 请问如何能获得一个不限于窗体客户区的绘图对象?
- 请教, 怎么反编译加密了或混淆了的 dll 文件?
- 那位能给一些C#生成静态页面的代码,里面包括页面间的联系,翻页,登陆,等等,日常交互的内容(100分)
- 我是初学者。我想学习编程,请问我应该怎么学!要学哪些知识,按什么顺序?谢谢!
再次重新导入的问题,可以在导入前把刚才导入的删掉,也可以控制不让再次导入,看你需求而定
@filename varchar(200), --Excel文件名
@exceltablename varchar(20), --EXcel内表名
@tablename varchar(200) --将要存在数据库里的表名
as
declare @sql varchar(1000)
set @sql=' insert into '+@tablename+
' SELECT * '+
' FROM OpenDataSource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+@filename+
';User ID=Admin;Password=;Extended properties=Excel 5.0'')...['+@exceltablename+'$]'--这里加个$
print @sql
exec(@sql)
go--测试
--exec readexceldata 'E:\Project\test.xls','sheet1','test'该存储过程我是经过测试了的,我本地没问题,你出现的问题可能是字段对应产生的,你需要逐个对应检查
我又测试了一下,两个字段,学历编号,学历.插如了十几条记录可以了,但是我要把Excel中的第一行列标题去掉才可以,字段多了就不行了,20个字段试了一下,查寻出来的记录,列标题顺序不与sql server的列标题顺序相同,插入出错,这样如果要一一对应用SQL语句可以,但通用性就不好了
再次写信你,这两天就结贴!!1
set @sql=' insert into '+@tablename+
' SELECT * '+
' FROM OpenDataSource(''Microsoft.Jet.OLEDB.4.0'',''Data Source='+@filename+
';User ID=Admin;Password=;Extended properties=Excel 5.0'')...['+@exceltablename+'$]'--
你select后面的*要是换成指定的字段就可以,要和SQL server的对应才行,如果不指定用*代替的话就不行,在SQL表中调试通不过,用*查寻出来的字段是好像按拼音排列的,字段对不上提示类型不对,望小山指正!!!