今天看到一个excel导入sql server的语句:
INSERT INTO employee
(name, officetel)
SELECT 姓名, 手机号码=cast(手机号码 as bigint)-->转为bigint再让SQL隐式转换为varchar
FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source="F:\Book1.xls";
User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] Rowset_1
我上网查了一下,好像都没有提到后面的Rowset_1。
请问大家,这Rowset_1有什么用吗?
INSERT INTO employee
(name, officetel)
SELECT 姓名, 手机号码=cast(手机号码 as bigint)-->转为bigint再让SQL隐式转换为varchar
FROM OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source="F:\Book1.xls";
User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$] Rowset_1
我上网查了一下,好像都没有提到后面的Rowset_1。
请问大家,这Rowset_1有什么用吗?
'EXCEL 8.0;HDR=YES;IMEX=1; DATABASE=e:\test.xls',Sheet1$)
可以不用它。你就把Excel看成是一个库,Sheet看成是一个表,他是Sheet的别名。搂主理解成表别名也行,反正这样好理解。
OPENDATASOURCE ('Microsoft.Jet.OLEDB.4.0',
'Data Source="F:\Book1.xls";
User ID=Admin;Password=;Extended properties=Excel 5.0')...[Sheet1$]
是一个表,而不是sheet1$的表别名