0

我创建了一个存储过程来将 Excel 文件转换为 SQL Server 2008 R2。当我在 Visual Studio 2008 中对其进行测试时,它运行良好。

但是,当我在使用SqlDataSource控件的 ASPX 页面中使用存储过程时,虽然没有显示错误消息,但存储过程不会执行,也不会发生转换。这是 ASPX 代码:

<%@ Page Title="Home Page" Language="VB" MasterPageFile="~/Site.Master" 
         AutoEventWireup="false" CodeFile="Processing.aspx.vb" Inherits="_Default" %>
<asp:Content ID="HeaderContent" runat="server" ContentPlaceHolderID="HeadContent">
</asp:Content>
<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
         ConnectionString="<%$ ConnectionStrings:MyConnectionString %>" 
         SelectCommand="MyStoredProcedure" 
         SelectCommandType="StoredProcedure">
    </asp:SqlDataSource>
</asp:Content>

SQL Server 存储过程代码:

ALTER PROCEDURE dbo.MyStoredProcedure 
AS

SELECT * 
INTO [dbo].[MySQLtable] 
FROM OPENROWSET('Microsoft.ACE.OLEDB.12.0', 'Excel 8.0;Database=C:\MyExceltable;', 
                'SELECT * FROM [Sheet1$]')
RETURN

任何帮助将不胜感激。

4

2 回答 2

1

你有:

SelectCommand="MyStoredProcedure" 

查看您的 SQL 脚本,这应该是:

SelectCommand="StoredProcedureExcelToSQL" 
于 2012-06-25T09:00:02.013 回答
1

aspx 页面是从服务器提供的吗?如果是这样,文件(MyExceltable)需要在服务器上而不是用户的机器上。

于 2012-06-25T08:57:29.143 回答