2011-12-09 88 views
0

我目前在Visual Basic 2010中使用webform工作。我在Visual Basic中创建了一个SQL数据库,并试图使insert命令将文本框中的值移动到数据库中。所以我的问题是:我如何从文本框(即:NameTextBox,AddressTextBox ..)获取值并将它们与参数(@Name,@ Address1)相关联?ASP.net,SQL数据库,插入,文本框

该数据库的工作原理,我通过代码输入值来测试它。

下面是相关代码:

<script runat="server"> 
' InsertShipper 
    Private Sub InsertShipper (ByVal Source As Object, ByVal e As EventArgs) 
    SqlDataSource1.Insert() 
End Sub 
    </script> 


<asp:Button ID="OrderButton" runat="server" onclick="InsertShipper" Text="Order" /> 
    <asp:SqlDataSource ID="SqlDataSource1" runat="server" 
     ConnectionString="<%$ ConnectionStrings:OrderListConnectionString %>" 
     DeleteCommand="DELETE FROM [ORDER] WHERE [OID] = @OID" 
     InsertCommand="INSERT INTO [ORDER] ([Name], [Address1], [Address2], [City],  [State], [Zip], [Phone], [Email], [Subtotal], [Shipping]) VALUES (@Name, @Address1,  @Address2, @City, @State, @Zip, @Phone, @Email, @Subtotal, @Shipping)" 
     SelectCommand="SELECT * FROM [ORDER]" 

     UpdateCommand="UPDATE [ORDER] SET [Name] = @Name, [Address1] = @Address1, [Address2] = @Address2, [City] = @City, [State] = @State, [Zip] = @Zip, [Phone] = @Phone, [Email] = @Email, [Subtotal] = @Subtotal, [Shipping] = @Shipping WHERE [OID] = @OID"> 
     <DeleteParameters> 
      <asp:Parameter Name="OID" Type="Int32" /> 
     </DeleteParameters> 
     <InsertParameters> 

      <asp:Parameter name="Name" Type="String" /> 
      <asp:Parameter name="Address1" Type="String" /> 
      <asp:Parameter Name="Address2" Type="String" /> 
      <asp:Parameter Name="City" Type="String" /> 
      <asp:Parameter Name="State" Type="String" /> 
      <asp:Parameter Name="Zip" Type="String" /> 
      <asp:Parameter Name="Phone" Type="String" /> 
      <asp:Parameter Name="Email" Type="String" /> 
      <asp:Parameter Name="Subtotal" Type="String" /> 
      <asp:Parameter Name="Shipping" Type="String" /> 
     </InsertParameters> 
     <UpdateParameters> 
      <asp:Parameter Name="Name" Type="String" /> 
      <asp:Parameter Name="Address1" Type="String" /> 
      <asp:Parameter Name="Address2" Type="String" /> 
      <asp:Parameter Name="City" Type="String" /> 
      <asp:Parameter Name="State" Type="String" /> 
      <asp:Parameter Name="Zip" Type="String" /> 
      <asp:Parameter Name="Phone" Type="String" /> 
      <asp:Parameter Name="Email" Type="String" /> 
      <asp:Parameter Name="Subtotal" Type="String" /> 
      <asp:Parameter Name="Shipping" Type="String" /> 
      <asp:Parameter Name="OID" Type="Int32" /> 
     </UpdateParameters> 
    </asp:SqlDataSource> 

回答

0

你参数的名称属性是缺少“@”字符。你需要添加它,或者将它看作是一个完全不同的参数。

相关问题