1、从excel查询数据
(1)Select *
From OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:/a.xls";User ID=Admin;Password=;Extended properties=Excel 8.0')...Sheet1$
这里需要注意的是excel表中的第一行是标题行,不属于数据记录。而且在查询的时候,它是按照ASIC排序的,除非指定列的顺序。
(2)select * from OpenRowSet('Microsoft.Jet.OLEDB.4.0','Excel 8.0;hdr=yes;IMEX=1;DataBase=C:/a.xls','select * from [sheet1$]')
HDR=YES 有两个值:YES/NO,表示第一行是否字段名,默认是YES,第一行是字段名;
IMEX=1 解决数字与字符混合时,识别不正常的情况
2、把excel里的数据导入到sqlserver表中
(1)insert into userinfo(username,userpwd,userclass)
Select *
From OpenDataSource('Microsoft.Jet.OLEDB.4.0','Data Source="c:/a.xls";User ID=Admin;Password=;Extended properties=Excel 8.0')...Sheet1$
这里需要注意的是excel表中的第一行是标题行,不属于数据记录。而且在查询的时候,它是按照ASIC排序的,除非指定列的顺序。
into 表(字段1,字段2,...)要填写上。
(2)select * into userinfo from OpenRowSet('Microsoft.Jet.OLEDB.4.0','Excel 8.0;hdr=No;IMEX=1;DataBase=C:/a.xls','select * from [sheet1$]')
应用上面的语句,整个表里面的数据将被清空,附上的是excel里面的数据记录。
3、从SQLSERVER导入到EXCEL中
INSERT INTO OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source="c:/test.xls";User ID=Admin;Password=;Extended properties=Excel 8.0' )...Sheet1$
SELECT productno, productname, modelspec, maxinventory, mininventory
FROM product
这里注意excel在建立后要写明表头。