[英]Update primary key in grid view
我目前正在為客戶開發基於 Web 的應用程序。 考慮到我應該創建一個允許他們更新 clientID(PK) 的函數的要求。 我打算使用 gridview 使其更容易。 但是,我真的不知道如何使主鍵字段可以更新。
在我的客戶端表中,我有:clientID(PK)、clientName、clientAddress 等。
如果有人能告訴我怎么做,我將不勝感激。 提前致謝。
主鍵是您不希望更新的東西,因為它將破壞外鍵引用。 如果客戶端需要一個需要更改的ID,則只需將其作為表中的另一個字段而不是主鍵即可。
這有效:
Protected Sub GridView1_rowupdating(sender As Object, e As GridViewUpdateEventArgs) Handles GridView1.RowUpdating
e.NewValues("id2")=e.NewValues("id")
End Sub
<asp:GridView ID="GridView1" DataSourceID="ds_myTable" DataKeyNames="id" Runat="Server">
<columns>
<asp:CommandField ShowEditButton="True" HeaderStyle-Width="100px"/>
<asp:BoundField DataField="id" HeaderText="Id" HeaderStyle-HorizontalAlign="Right" ItemStyle-HorizontalAlign="Right" />
<asp:BoundField DataField="someField" HeaderText="someField" />
</columns>
</asp:GridView>
<asp:SqlDataSource id="ds_myTable"
ConnectionString="<%$ connectionStrings: ... %>"
ProviderName="<%$ ConnectionStrings: ... %>"
SelectCommand="SELECT * from myTable Order By id;"
UpdateCommand= "UPDATE myTable SET id=@id2,someField=@someField WHERE id=@id"
runat="Server">
<UpdateParameters>
<asp:Parameter Name="someField" Type="String" />
<asp:Parameter Name="id" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.