Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/29.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 在SqlDataSource中找不到SQL变量_Asp.net_Gridview_Sqldatasource - Fatal编程技术网

Asp.net 在SqlDataSource中找不到SQL变量

Asp.net 在SqlDataSource中找不到SQL变量,asp.net,gridview,sqldatasource,Asp.net,Gridview,Sqldatasource,我在GridView上有以下SqlDataSource。除删除功能外的所有工作 我做错了什么,没有错误,但也没有结果 如何解决这个问题 <asp:SqlDataSource ID="BookingsSQL" runat="server" ConnectionString="<%$ ConnectionStrings:BookingsConnectionString %>" OldValuesParameterFormatString="original_{0}" Co

我在GridView上有以下SqlDataSource。除删除功能外的所有工作

我做错了什么,没有错误,但也没有结果

如何解决这个问题

 <asp:SqlDataSource ID="BookingsSQL" runat="server" ConnectionString="<%$    ConnectionStrings:BookingsConnectionString %>"
 OldValuesParameterFormatString="original_{0}" ConflictDetection="OverwriteChanges"
 SelectCommand="SELECT [ID], [programme name] AS programme_name, [Start], [Finish], [Source], [Destination], [Comment] FROM [Bookings]"
 DeleteCommand="DELETE FROM [Bookings] WHERE [programme name] = @ID" InsertCommand="INSERT INTO [Bookings] ([programme name], [Start], [Finish], [Source], [Destination], [Comment]) VALUES (@programme_name, @Start, @Finish, @Source, @Destination, @Comment)"
 UpdateCommand="UPDATE [Bookings] SET [programme name] = @programme_name, [Start] = @Start, [Finish] = @Finish, [Source] = @Source, [Destination] = @Destination, [Comment] = @Comment WHERE [ID] = @ID">
 <DeleteParameters>
      <asp:Parameter Name="ID" Type="Int32" />
 </DeleteParameters>
 <InsertParameters>
      <asp:Parameter Name="programme_name" Type="String" />
      <asp:Parameter Name="Start" Type="DateTime" />
      <asp:Parameter Name="Finish" Type="DateTime" />
      <asp:Parameter Name="Source" Type="String" />
      <asp:Parameter Name="Destination" Type="String" />
      <asp:Parameter Name="Comment" Type="String" />
 </InsertParameters>
 <UpdateParameters>
      <asp:Parameter Name="ID" Type="Int32" />
      <asp:Parameter Name="Start" Type="DateTime" />
      <asp:Parameter Name="Finish" Type="DateTime" />
      <asp:Parameter Name="Source" Type="String" />
      <asp:Parameter Name="Destination" Type="String" />
      <asp:Parameter Name="Comment" Type="String" />
      <asp:Parameter Name="programme_name" Type="String" />
 </UpdateParameters>

我认为:

DELETE FROM [Bookings] WHERE [programme name] = @ID
应该是这样的:

DELETE FROM [Bookings] WHERE [ID] = @ID
我认为:

DELETE FROM [Bookings] WHERE [programme name] = @ID
应该是这样的:

DELETE FROM [Bookings] WHERE [ID] = @ID

您可以通过
[program name]
删除,从其他查询中,您似乎希望通过
[ID]
列删除

由于该列存在,因此不会出现错误,也不会删除任何匹配项。将查询更改为:

 DELETE FROM Bookings WHERE ID=@ID

您可以通过
[program name]
删除,从其他查询中,您似乎希望通过
[ID]
列删除

由于该列存在,因此不会出现错误,也不会删除任何匹配项。将查询更改为:

 DELETE FROM Bookings WHERE ID=@ID

我更改了DeleteCommand=“从[Bookings]删除,其中[ID]=@ID”,我收到了相同的结果。。没有什么如果我尝试一个有效的整数,例如[ID]=9“删除命令起作用。我更改了DeleteCommand=“delete FROM[Bookings]WHERE[ID]=@ID”,我收到了相同的结果..什么都没有。如果我尝试一个有效的整数,例如[ID]=9”删除命令起作用,那么它就无法引用ID。