2016-11-07 18 views
1

2つの異なるテーブルにデータを挿入する方法に問題があります。だから私の要件はこれです。VB.NETを使用して2つのテーブルにデータを挿入する方法?

  • ユーザは、[従業員情報]の下に必要なすべての情報を入力してから、ユーザがSAVEボタンをクリックすると、データを保存します。 [グループの詳細]で、ユーザーはドロップダウンメニューのすべての必要な情報をクリックし、ADDリンクをクリックする前にテーブルグリッドビューのテキストボックスに入力する必要があります。追加されたジョブタイトルとビジネスグループの詳細が表示されます。ユーザーは、ユーザーが希望する数のJobタイトルを入力することができます。最後に、「新規従業員をヘッドカウントに追加」リストで、追加された従業員情報の人員を追加するためにPROCEEDボタンをクリックする必要があります。 私はすでにテーブルを終えましたが、入力したデータを保存する際に問題があります。

だから私の最初の表は、このBeforeのように見え、私はそれを編集して、今、これはNow

私のテーブルであるので、私の問題は、私のデータベースに私は2つのテーブルを持っている、これです。

EMP_MASTERTBL has these columns 

SEQID | MASTERID | firstname | lastname | Country | JOBTITLE 

and EMPGROUP_TBL has these columns 

MASTERID | business_unit | division | Sub_Division 

今毎回私はjobtitleはので、私は、私はグループの詳細の下の[追加]ボタンをクリックしたときにEMP_MASTERTBLテーブルを更新しますVB.Netでコードを作成EMP_MASTERTBLに保存することができません[保存]をクリックします。

ここに私のコードです。

If UpdateInsDelRecord("INSERT INTO EMPGROUP_TBL (MASTERID, BUSINESS_UNIT, " & _ 
        "DIVISION, SUB_DIVISION, CLASSIFICATION, SUB_CLASSIFICATION) VALUES " & _ 
        "('" + HandleQuote(Me.lblval_Empid.Text) + "', " & _ 
        "'" + Me.ddl_BusinessUnit.SelectedValue.ToString() + "' ," & _ 
        "'" + val_division + "' ," & _ 
        "'" + val_subdivision + "' ," & _ 
        "'" + Me.ddl_Classification.SelectedValue.ToString() + "' ," & _ 
        "'" + Me.ddl_SubClassification.SelectedValue.ToString() + "')" & _ 
        ";" & _ 
        "UPDATE EMP_MASTERTBL SET JOBTITLE = '" + Me.txtJobtitle.Text + "' " & _ 
        "WHERE MASTERID = '" + Me.lblval_Empid.Text + "'") = True Then 
    Return True 
    Response.Redirect("eHR_EmpMaintenance.aspx") 
Else 
    Return False 
End If 

ただし、ユーザーは、ユーザーが望むだけの数のJobtitleを追加できなければなりません。だから私はそれについて別のクエリを書くつもりだと思っていますか? Group Detailsを追加して、ユーザーが望むだけのJobtitleを追加できるようにするにはどうすればよいですか?これで私を助けてください。

ありがとうございました。

+1

2つのテーブルに挿入する場合は、2つのINSERT文が必要です。一部のADO.NETプロバイダ。 'SqlClient'は、コマンドごとに複数のステートメントをサポートします。 – jmcilhinney

+0

両方のテーブルにデータを挿入するためにクエリを別々に書く必要があります... –

+1

'Response.Redirect(" eHR_EmpMaintenance.aspx ")'この行は決して実行されません –

答えて

0

私はあなたのUpdateInsDelRecordメソッドではあまりよく分かりません。戻り値の型がBooleanのsqlクエリを単に実行している場合は、別の挿入/更新クエリをと書くことができます。セパレータ。そして、あなたはEMPMASTER_TBLテーブルのフィールドJobtitleを更新したいと思っています。

If UpdateInsDelRecord("INSERT INTO EMPGROUP_TBL (MASTERID, BUSINESS_UNIT, " & _ 
          "DIVISION, SUB_DIVISION, CLASSIFICATION, SUB_CLASSIFICATION) VALUES " & _ 
          "('" + HandleQuote(Me.lblval_Empid.Text) + "', " & _ 
          "'" + Me.ddl_BusinessUnit.SelectedValue.ToString() + "' ," & _ 
          "'" + val_division + "' ," & _ 
          "'" + val_subdivision + "' ," & _ 
          "'" + Me.ddl_Classification.SelectedValue.ToString() + "' ," & _ 
          "'" + Me.ddl_SubClassification.SelectedValue.ToString() + "')" &_ 
          ";" &_ 
          "UPDATE EMPMASTER_TBL SET JOBTITLE = "Your value" WHERE empno = "YOur emp id" ") = True Then 
     Return True 
     Response.Redirect("eHR_EmpMaintenance.aspx") 
    Else 
     Return False 
    End If 
関連する問題