2011-12-27 32 views
-2

私はプロファイルを持っています(下の画像に示されています)テーブル私はそれから行を削除しようとすると、ロットテーブルのIdに関連するTemppriceテーブル。外部キーを持つ2つのテーブル間のデータベース削除クエリ

問題はLotsテーブルがDeleteに変わったとき、Tempriceには異なるUseridを持ち、削除するOwneridまたはWinneridを持つlotsidと同じ行が残っています。

この行を削除する方法がわかりません!またはどのクエリが必要ですか?

データベースの関係とテーブル: Database Relationships

はコード

while (checkbox.Checked) 
{ 
    // Retreive the ID 
    int ida = Convert.ToInt32(GridView1.DataKeys[row.RowIndex].Value); 

    // Pass the value of the selected Id(s) to the Delete //command. 

    //These numbers indicate in which order tables shoulde be deleted 
    /*1*/ 
    new BLL.LoginBLL().Delete(ida); 
    /*2*/ 
    new BLL.MessageBLL().Delete(ida); 
    /*3*/ 
    new BLL.JointBLL().Delete(ida);      
    /*4*/ 
    new BLL.TemppriceBLL().Delete(ida);        
    /*5*/ 
    new BLL.LotsBLL().Delete(ida);  
    /*6*/  
    new BLL.AuctionBLL().Delete(ida); 
    /*7*/ 
    new BLL.ProfileBLL().DeleteProfile(ida); 

    checkbox.Checked = false; 
} 

ShowUsers(); 
+1

テーブル構造を適切なSQLコードとして与えることができますか?この画像は小さすぎて何も読み取れません。 –

+1

画像を新しいタブで表示すると、判読可能なサイズが表示されます。 –

+0

私はほとんど5つのptフォントを "読み込み可能"と呼んでいません – McKay

答えて

0

の参照を削除するには、カスケードに(2つのオブジェクトを結ぶ線を選択することで)関係を設定する必要がありますEnd 1 On Deleteプロパティの場合 次に参照先のオブジェクトまたはコレクションLoadする必要があります。この場合Deleteを呼び出すと、オブジェクトとそれが参照するすべてのオブジェクトが削除されます。

+0

いいえカスケードDeleteを使用しません。 –

+0

次に、他のすべての関連する参照を手動で削除する必要があります。 –

+0

?私はどのクエリを意味しますか? –

関連する問題