2009-08-18 7 views
0

私はこの問題に直面しているというWebページを作成します。下記を参照してください。ユーザーテーブルでMySQLコミットとロールバック

私はフィールドを次のようしている:サービステーブルで

  • ユーザーID
  • パスワード
  • 住所
  • 電話
  • メール

を私は次のフィールドがあります。

  • Ser_name
  • ser_id
  • USER_Refid

これらはすべて、PHPで同じページにあります。

サービステーブルに値を追加すると、同じUSER_Refid名で格納されます。

たとえば、ユーザーxxxxがサービスを追加しようとすると、USER_Refidフィールドにすべてのサービスの同じ名前が含まれていることを意味します。

私の問題は、ユーザーがサービステーブルに値を追加し、ユーザーテーブルに値を追加するのを忘れた場合です。つまり、その特定のユーザーによって挿入された値を削除したいということです。これを解決するために私を助けてください、ありがとうございます。

答えて

0

あなたのテーブルがInnoDBている場合は、することができますあなたのサービステーブルにFOREIGN KEY制約:

ALTER TABLE service_table ADD CONSTRAINT fk_service_user_refid FOREIGN KEY (USER_refid) REFERENCES user_table (USER_id) 

は、セッションIDを持つメモリテーブルを作成し、サービスに値を追加するには、サービスとそれを移入すると、 F

  • user_table
  • でユーザーのエントリを作成したエントリを移動:ユーザーがSaveをクリックすると、次の操作を行います一時テーブルをservice_tableに書き込んでください。
+0

最初のユーザーは、値をユーザーテーブルに保存せずにサービステーブルに値を追加できます[そのユーザーIDフィールドの値を与えるだけで、サービステーブルはUSER_Refidフィールドの値をとります] – Sakthivel

+0

条件が適用されますユーザーが最初にユーザーテーブルに値を格納する場合 – Sakthivel

+0

最初にユーザーテーブルに追加しないのはなぜですか?あなたのサービステーブルレコードがユーザーテーブルにエントリなしで存在できない場合は、これが理にかなっています。 – Quassnoi

関連する問題