2016-11-07 2 views
1

У меня возникла проблема с введением данных в две разные таблицы. Поэтому мои требования таковы.Как вставить данные в две таблицы с помощью VB.NET?

  • Пользователь заполнит всю необходимую информацию в разделе Информация о сотрудниках, а затем, чтобы сохранить данные, пользователь нажмет кнопку СОХРАНИТЬ. В разделе «Сведения группы» пользователю необходимо щелкнуть всю необходимую информацию в раскрывающемся меню и ввести в текстовое поле вида сетки таблицы, прежде чем нажимать ссылку «ADD», после чего на странице будет отображаться информация о добавленной должности и бизнес-группе. Пользователю разрешено вводить столько заданий, сколько пожелает пользователь. Последний - это список «Добавить нового сотрудника в список голов», пользователю необходимо нажать кнопку «ПРОЦЕДУ», чтобы добавить численность добавленной информации о сотрудниках. Я уже закончил таблицу, но у меня проблемы с сохранением данных, которые я вводил.

Так что мой первый стол выглядит так Before и отредактировать его, и теперь это мой стол Now

Так что моя проблема в том, что, в моей базе данных у меня есть две таблицы.

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 по желанию пользователя. Итак, я думаю, что я просто напишу еще один запрос для этого? Как я могу добавить данные группы и иметь возможность добавлять столько, сколько Jobtitle по желанию пользователя? Помогите мне с этим, пожалуйста.

Спасибо.

+1

Если вы хотите вставить две таблицы, вам потребуются два оператора INSERT. Некоторые поставщики ADO.NET, например. 'SqlClient', будет поддерживать несколько операторов для каждой команды. – jmcilhinney

+0

вам нужно будет написать запрос отдельно, чтобы вставить ваши данные в обе таблицы ... –

+1

'Response.Redirect (" eHR_EmpMaintenance.aspx ")' эта строка никогда не будет выполнена –

ответ

0

Я не очень уверен в вашем методе UpdateInsDelRecord. Если он просто выполняет запрос sql с возвращаемым типом Boolean, вы можете написать другой запрос на вставку/обновление с помощью ; разделитель. И я верю, что вы хотите обновить поле Jobtitle в таблице EMPMASTER_TBL.

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 
Смежные вопросы