我有一个问题,我在过去 24 小时内一直在努力解决,所以为了避免我发疯,我想我会请人帮忙解决我的问题!
我正在使用 Visual Web Developer,在此我有一个 asp Gridview 元素,它从我的 AccessDataSource 中选择信息。(我可能会添加完美的作品。)
当我尝试更新 Gridview 中的信息时出现错误。我的更新 SQL 在 Access 中运行良好,但在 VWD 中它不会引发错误消息,但无法将新数据保存到数据库中。我已经在 asp 中为更新命令设置了参数,我也设置了“DataKeyNames”。
谁能帮我这个?我对此比较陌生,我只是看不出我哪里出错了。我一直在网上进行广泛的搜索,但仍然无法完全看到它,所以我认为我的下一个最佳选择是在这里询问。
提前谢谢了。:)
我的 ASP.net 代码:
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
DataSourceID="AccessDataSource1" DataKeyNames="MemberID"
style="z-index: 1; left: 0px; top: 147px; position: absolute; height: 133px;
width:499px">
<Columns>
<asp:CommandField ShowEditButton="True" />
<asp:BoundField DataField="RaceID" HeaderText="RaceID" SortExpression="RaceID" />
<asp:BoundField DataField="MemberID" HeaderText="MemberID" SortExpression="MemberID" />
<asp:BoundField DataField="MemberName" HeaderText="MemberName"
SortExpression="MemberName" />
<asp:BoundField DataField="PersonalTime" HeaderText="PersonalTime"
SortExpression="PersonalTime" />
<asp:BoundField DataField="FinishPosition" HeaderText="FinishPosition"
SortExpression="FinishPosition" />
<asp:BoundField DataField="Points" HeaderText="Points"
SortExpression="Points" />
</Columns>
</asp:GridView>
<asp:AccessDataSource ID="AccessDataSource1" runat="server"
DataFile="~/App_Data/myDatabase.mdb"
SelectCommand="SELECT tblResult.RaceID, tblResult.MemberID, tblMember.MemberName,
tblResult.PersonalTime, tblResult.FinishPosition, tblPoint.Points FROM ((tblRaceType
INNER JOIN (tblRace INNER JOIN (tblMember INNER JOIN tblResult ON tblMember.MemberID =
tblResult.MemberID) ON tblRace.RaceID = tblResult.RaceID) ON tblRaceType.RaceTypeID =
tblRace.RaceTypeID) INNER JOIN tblPoint ON tblResult.FinishPosition = tblPoint.
[Position] AND tblRaceType.RaceTypeID = tblPoint.RaceTypeID) WHERE (tblResult.RaceID =
?) AND (tblPoint.RaceTypeID = ?) ORDER BY tblResult.FinishPosition"
UpdateCommand="UPDATE [tblResult] SET PersonalTime = ?, FinishPosition = ? WHERE
MemberID = ? AND RaceID = ?">
<SelectParameters>
<asp:SessionParameter DefaultValue="0" Name="?" SessionField="raceID" />
<asp:SessionParameter DefaultValue="0" Name="?" SessionField="raceTypeID" />
</SelectParameters>
<UpdateParameters>
<asp:Parameter Name="PersonalTime" Type="String"/>
<asp:Parameter Name="FinishPosition" Type="Int64" />
<asp:Parameter Name="MemberID" Type="Int64" />
<asp:Parameter Name="RaceID" Type="Int64" />
</UpdateParameters>
</asp:AccessDataSource>