一个导出Excel的sql语句
insert into
openrowset(
'MicroSoft.Jet.OleDB.4.0',
'Excel 8.0;HDR=no;imex=0;Database=C:\Documents and Settings\cqc\桌面\1234.xls',
Sheet1$)
因为:1234.xls 的Excel表 中的列名和Sql查询出来的列名数目不一致,
比如:Excel 有20 列,已经有表头了,
而 sql查询结果只有 15列,其中,Excel表的10,11,15,20,14 这些列是不需要填数据的,刚好是sql查询结 中没有的列,
怎么样让在导出Excel时指定空列,和从Excel指定的行开始导数据
4 个解决方案
#1
这个不知道怎么实现的。
但是有个本办法:把所有数据导入到一张表中,再给这张表加一个能够identity的字段,然后你再从这张表里面通过那个字段去你想要的数据复制到另一张表中
#2
LZ这个可以考虑使用excel直接提取数据的处理。而不是从sql侧插入。
提取数据可以进行刷新。当然这个在2007 和2010的excel上要好一些。
参考 http://office.microsoft.com/zh-cn/excel-help/HA010342298.aspx
#3
空列已经解决了,
现在的问题是:怎么样从 指定的Excel行开始导
#4
一个导出Excel的sql语句
insert into
openrowset(
'MicroSoft.Jet.OleDB.4.0',
'Excel 8.0;HDR=no;imex=0;Database=C:\Documents and Settings\cqc\桌面\1234.xls',
Sheet1$)
因为:1234.xls 的Exce已经有列名了,现在要从1234.xls的第四行开始插入数据,
且 sql查询出来的日期格式是 2011-03-31 12:00 或者2011-03-31 00:00
要将时间格式转换成2011年3月31日上午(00:00为上午)
2011年3月31日下午(12:00为下午)
或者直将 2011-03-31 这样日期格式转换成 2011年3月31日 日期格式
insert into
openrowset(
'MicroSoft.Jet.OleDB.4.0',
'Excel 8.0;HDR=no;imex=0;Database=C:\Documents and Settings\cqc\桌面\1234.xls',
Sheet1$)
因为:1234.xls 的Exce已经有列名了,现在要从1234.xls的第四行开始插入数据,
且 sql查询出来的日期格式是 2011-03-31 12:00 或者2011-03-31 00:00
要将时间格式转换成2011年3月31日上午(00:00为上午)
2011年3月31日下午(12:00为下午)
或者直将 2011-03-31 这样日期格式转换成 2011年3月31日 日期格式
#1
这个不知道怎么实现的。
但是有个本办法:把所有数据导入到一张表中,再给这张表加一个能够identity的字段,然后你再从这张表里面通过那个字段去你想要的数据复制到另一张表中
#2
LZ这个可以考虑使用excel直接提取数据的处理。而不是从sql侧插入。
提取数据可以进行刷新。当然这个在2007 和2010的excel上要好一些。
参考 http://office.microsoft.com/zh-cn/excel-help/HA010342298.aspx
#3
空列已经解决了,
现在的问题是:怎么样从 指定的Excel行开始导
#4
一个导出Excel的sql语句
insert into
openrowset(
'MicroSoft.Jet.OleDB.4.0',
'Excel 8.0;HDR=no;imex=0;Database=C:\Documents and Settings\cqc\桌面\1234.xls',
Sheet1$)
因为:1234.xls 的Exce已经有列名了,现在要从1234.xls的第四行开始插入数据,
且 sql查询出来的日期格式是 2011-03-31 12:00 或者2011-03-31 00:00
要将时间格式转换成2011年3月31日上午(00:00为上午)
2011年3月31日下午(12:00为下午)
或者直将 2011-03-31 这样日期格式转换成 2011年3月31日 日期格式
insert into
openrowset(
'MicroSoft.Jet.OleDB.4.0',
'Excel 8.0;HDR=no;imex=0;Database=C:\Documents and Settings\cqc\桌面\1234.xls',
Sheet1$)
因为:1234.xls 的Exce已经有列名了,现在要从1234.xls的第四行开始插入数据,
且 sql查询出来的日期格式是 2011-03-31 12:00 或者2011-03-31 00:00
要将时间格式转换成2011年3月31日上午(00:00为上午)
2011年3月31日下午(12:00为下午)
或者直将 2011-03-31 这样日期格式转换成 2011年3月31日 日期格式