欢迎光临
我们一直在努力

在dataset中建立外键约束_asp.net实例

建站超值云服务器,限时71元/月

程序可以直接拿来使用,运行通过。


—————————————————-
testconstraint.aspx
—————————————————-


<%@ Page Language=”c#” debug=”true” %>
<%@ Import Namespace=”System.Data” %>
<%@ Import Namespace=”System.Data.SqlClient” %>


<html>
<head>
<script language=”c#” runat=”server”>
public DataSet ds;
void Page_Load(Object sender,EventArgs e)
{
    if(!IsPostBack)
    {
        SqlConnection myConnection = new SqlConnection(“server=(local);database=northwind;Trusted_Connection=yes”);
        SqlDataAdapter myDataAdapter1=new SqlDataAdapter(“select * from suppliers”,myConnection);
        SqlDataAdapter myDataAdapter2=new SqlDataAdapter(“select * from products”,myConnection);


        ds=new DataSet();
        myDataAdapter1.Fill(ds,”suppliers”);
        myDataAdapter2.Fill(ds,”products”);


        MyDataGrid.DataSource=ds.Tables[“suppliers”].DefaultView;
        MyDataGrid.DataBind();
        MyDataGrid2.DataSource=ds.Tables[“products”].DefaultView;
        MyDataGrid2.DataBind();
    }
}


void MyDataGrid_Delete(Object sender,DataGridCommandEventArgs e)
{
    String conn=”server=(local);database=northwind;Trusted_Connection=yes”;
    String selectCommandText1=”select * from suppliers”;
    String selectCommandText2=”select * from products”;


     SqlDataAdapter myDataAdapter1=new SqlDataAdapter();
    myDataAdapter1.SelectCommand=new SqlCommand();
    myDataAdapter1.SelectCommand.CommandText=selectCommandText1;
    myDataAdapter1.SelectCommand.Connection=new SqlConnection(conn);


    SqlDataAdapter myDataAdapter2=new SqlDataAdapter();
    myDataAdapter2.SelectCommand=new SqlCommand();
    myDataAdapter2.SelectCommand.CommandText=selectCommandText2;
    myDataAdapter2.SelectCommand.Connection=new SqlConnection(conn);


    ds=new DataSet();
    myDataAdapter1.Fill(ds,”suppliers”);
    myDataAdapter2.Fill(ds,”products”);


    CreateConstraint();


    int index=(int)e.Item.ItemIndex;
    ds.Tables[“suppliers”].Rows[index].Delete();
    ds.Tables[“suppliers”].AcceptChanges();


    myDataAdapter1.Update(ds,”suppliers”);
    
    MyDataGrid.DataSource=ds.Tables[“suppliers”].DefaultView;
    MyDataGrid.DataBind();


    MyDataGrid2.DataSource=ds.Tables[“products”].DefaultView;
    MyDataGrid2.DataBind();
}


void CreateConstraint()
{
    DataColumn parentColumn,childColumn;
    ForeignKeyConstraint myForeignKeyConstraint;


    parentColumn = ds.Tables[“suppliers”].Columns[“supplierID”];
    childColumn = ds.Tables[“products”].Columns[“supplierID”];
    myForeignKeyConstraint = new ForeignKeyConstraint(“SupplierForeignKeyConstraint”, parentColumn, childColumn);


    myForeignKeyConstraint.DeleteRule = Rule.Cascade ;
    myForeignKeyConstraint.UpdateRule = Rule.Cascade ;
    myForeignKeyConstraint.AcceptRejectRule = AcceptRejectRule.Cascade ;


    ds.Tables[“products”].Constraints.Add(myForeignKeyConstraint) ;
    ds.EnforceConstraints =true ;
}


</script>
</head>
<body>
<form runat=”server”>
<ASP:DataGrid id=”MyDataGrid” runat=”server”
      Width=”800″
      BackColor=”#ccccff”
      BorderColor=”black”
      ShowFooter=”false”
      CellPadding=3
      CellSpacing=”0″
      Font-Name=”Verdana”
      Font-Size=”8pt”
      HeaderStyle-BackColor=”#aaaadd”
      OnDeleteCommand=”MyDataGrid_Delete”
      DataKeyField=”supplierid”
    >


      <Columns>
         <asp:ButtonColumn Text=”Delete Employee” CommandName=”Delete”/>
      </Columns>


</ASP:DataGrid>


<hr>
<ASP:DataGrid id=”MyDataGrid2″ runat=”server”
      Width=”800″
      BackColor=”#ccccff”
      BorderColor=”black”
      ShowFooter=”false”
      CellPadding=3
      CellSpacing=”0″
      Font-Name=”Verdana”
      Font-Size=”8pt”
      HeaderStyle-BackColor=”#aaaadd”
    />


</form>
</body>
</html>

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 在dataset中建立外键约束_asp.net实例
分享到: 更多 (0)

相关推荐

  • 暂无文章