Excel2003配置为SQL Server2000的【链接服务器】
现在进行的工作是用vb和sql server2000管理公司的仓库。今天接到一张xsl的库存表,记录量非常大。首先的是用sql server2000查询分析器读出它来。
【文献:http://support.microsoft.com/kb/306397/EN-US/】
Enterprise Manager (SQL Server 2000)
<script type="text/javascript"></script>
- In Enterprise Manager, click to expand the Security folder.
- Right-click Linked Servers, and then click New linked server.
- On the General tab, follow these steps:
- In the first text box, type any name for the linked server.
- In the Server type box, click Other data source.
- In the Provider name list, click Microsoft Jet 4.0 OLE DB Provider.
- In the Data source box, type the full path and file name of the Excel file.
- In the Provider string box, type Excel 8.0 for an Excel 2002, Excel 2000, or Excel 97 workbook.
- Click OK to create the new linked server.
- Click to expand the new linked server name to expand the list of objects that it contains.
- Under the new linked server name, click Tables. Notice that your worksheets and named ranges appear in the right pane.
【/文献】
依照文献:
打开企业管理器,【sql server组】--【(local)】--【安全性】--右击【链接服务器】--【新建链接服务器】:
链接服务器:自己命名如KC_XX,下次再双击【链接服务器】的时候这个名字作为服务器名称显示
其它数据源--提供数据源的程序的名称,选择:Microsoft Jet 4.0 OLE DB Provider
产品名称:暂时不知做什么用,可以不写;
数据源:c:/xxx.xsl
提供程序字符串:Excel 8.0
填写完毕,确定。
双击【链接服务器】里的刚才命名的KC_XX,出现【表、视图】;双击【表】出现Excel文件中的Sheet1$,Sheet2$,说明连接成功。
打开查询分析器,输入:
SELECT * FROM KC_XX...Sheet1$
Excel表中Sheet1中数据全部输出在查询分析器显示结果的“网格”。
///
使用ADO(控件)连接Excel
初步打算尝试用SQL对Excel进行增删改,首先做到使用ADO(控件)连接Excel
ado使用MDAC中以下两个OLE DB提供程序都可以连接Excel数据文件:
MS Jet OLE DB Provider4.0 or
MS OLE DB Provider for ODBC Drivers
我使用的是Jet4.0,具体做法是:
1.创建vb的exe工程,引用ms ado data control6.0(ole db);ms datagrid control6.0(ole db).
2.右击【Adodc1】点击adodc属性,弹出【属性页】对话框。
3.【通用】--【使用字符串连接】--【生成】--展开【数据链接属性】对话框:
【提供程序】:ms jet 4.0 ole db provider
【连接】:选择或输入数据库名称,浏览选择xx.xsl的路径,会报错,无妨。
【高级】:无操作
【所有】:选【扩展属性】--【编辑值】--输入【Excel 8.0;】--confirm--返回【连接】点击【测试连接】--成功。
点击确定关闭【数据连接属性】对话框,返回【属性页】对话框;
4.点击【记录源】,类型为8,命令文本(SQL)输入:
select * from JiLu
5.打开xx.xsl,Ctrl+A选中所有内容,点击菜单栏【插入】--【名称】--【定义】,展开【定义名称】对话框,输入JiLu,确定。注意,第5步最好在第4步引用JiLu之前。
6.设置datagrid1的datasource为Adodc1.
7.运行vb程序,datagrid显示出Excel表格的内容。
用代码编写select语句。其中adodc1已经设置记录源并把datagrid1的datasource指定为adodc1,但是不妨碍编写代码,代码会用新的recordset覆盖form_load初始的记录集。