Join

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • OuTCasT
    Contributor
    • Jan 2008
    • 374

    Join

    hi all

    i have got a win app that has 2 screens
    SalaryScreen and EmployeeScreen



    now i bind the data to a dataTable manually in the code like this.

    [CODE=vb]Try
    sqlConnection = New SqlConnection(" Data Source=DONOVANP C\SQLEXPRESS;In itial Catalog=DemoDB; Integrated Security=True;P ooling=False")
    sqlConnection.O pen()
    sqlcommand = New SqlCommand("USE " + My.Settings.sql DataBaseName + vbCrLf & _
    "SELECT * FROM EmployeeDetails ", sqlConnection)
    sqlAdapter = New SqlDataAdapter
    sqlAdapter.Sele ctCommand = sqlcommand
    sqlDataTable = New DataTable
    sqlAdapter.Fill (sqlDataTable)

    ' Bind Controls with datatable
    txtEmployeeCode .DataBindings.A dd("text", sqlDataTable, "EmployeeCo de", True)
    txtSurname.Data Bindings.Add("t ext", sqlDataTable, "EmployeeSurnam e", True)
    txtInitials.Dat aBindings.Add(" Text", sqlDataTable, "EmployeeInitia ls", True)
    txtFirstNames.D ataBindings.Add ("text", sqlDataTable, "EmployeeFirstN ame", True)
    cbTitle.DataBin dings.Add("Text ", sqlDataTable, "EmployeeTitle" , True)
    txtNickName.Dat aBindings.Add(" text", sqlDataTable, "EmployeeNickNa me", True)
    txtPhysAddress1 .DataBindings.A dd("text", sqlDataTable, "EmployeePhysic alAddress1", True)
    txtPhysAddress2 .DataBindings.A dd("text", sqlDataTable, "EmployeePhysic alAddress2", True)
    txtPhysAddress3 .DataBindings.A dd("text", sqlDataTable, "EmployeePhysic alAddress3", True)
    txtPhysPCode.Da taBindings.Add( "text", sqlDataTable, "EmployeePhysic alPostalCode", True)
    cbGroup.DataBin dings.Add("text ", sqlDataTable, "EmployeeGroup" , True)
    cbGender.DataBi ndings.Add("tex t", sqlDataTable, "EmployeeGender ", True)
    cbLanguage.Data Bindings.Add("t ext", sqlDataTable, "EmployeeLangua ge", True)
    cbMaritalStatus .DataBindings.A dd("text", sqlDataTable, "EmployeeMarita lStatus", True)
    txtTelHome.Data Bindings.Add("t ext", sqlDataTable, "EmployeeTelHom e", True)
    txtCellNo.DataB indings.Add("te xt", sqlDataTable, "EmployeeCellNo ", True)
    txtTelWork.Data Bindings.Add("t ext", sqlDataTable, "EmployeeTelWor k", True)
    txtWorkExt.Data Bindings.Add("t ext", sqlDataTable, "employeeWorkEx t", True)
    txtRoomNo.DataB indings.Add("te xt", sqlDataTable, "EmployeeRoomNo ", True)
    txtEmailAddress .DataBindings.A dd("text", sqlDataTable, "EmployeeEmailA ddress", True)
    txtPostalAdd1.D ataBindings.Add ("text", sqlDataTable, "EmployeePostal Address1", True)
    txtPostalAdd2.D ataBindings.Add ("text", sqlDataTable, "EmployeePostal Address2", True)
    txtPostalAdd3.D ataBindings.Add ("text", sqlDataTable, "EmployeePostal Address3", True)
    txtPCode.DataBi ndings.Add("tex t", sqlDataTable, "EmployeePostal Code", True)
    txtID.DataBindi ngs.Add("text", sqlDataTable, "EmployeeIdNumb er", True)
    txtPassport.Dat aBindings.Add(" text", sqlDataTable, "EmployeePasspo rtNumber", True)
    cbNature.DataBi ndings.Add("tex t", sqlDataTable, "EmployeeNature ", True)
    txtTaxNo.DataBi ndings.Add("tex t", sqlDataTable, "EmployeeTaxNum ber", True)
    dtDateOfBirth.D ataBindings.Add ("Text", sqlDataTable, "EmployeeDateBi rth", True)
    dtEngageDate.Da taBindings.Add( "Text", sqlDataTable, "EmployeeEngage Date", True)
    dtIRP5Date.Data Bindings.Add("T ext", sqlDataTable, "EmployeeIRP5Da te", True)
    dtPensionStart. DataBindings.Ad d("Text", sqlDataTable, "EmployeePensio nStartDate", True)
    dtProvidentStar t.DataBindings. Add("Text", sqlDataTable, "EmployeeProvid entStartDate", True)
    dtMedicalStart. DataBindings.Ad d("Text", sqlDataTable, "EmployeeMedica lStartDate", True)
    dtRAStart.DataB indings.Add("Te xt", sqlDataTable, "EmployeeRAStar tDate", True)
    dtStudyExpirey. DataBindings.Ad d("Text", sqlDataTable, "EmployeeStudyE xpireyDate", True)
    cbPaymentType.D ataBindings.Add ("text", sqlDataTable, "EmployeePaymen tType", True)
    cbTaxStatus.Dat aBindings.Add(" text", sqlDataTable, "EmployeeTaxSta tus", True)
    cbNormalStatus. DataBindings.Ad d("text", sqlDataTable, "EmployeeNormal Status", True)
    dtResign.DataBi ndings.Add("Tex t", sqlDataTable, "EmployeeResign ationDate", True)
    txtResignReason .DataBindings.A dd("Text", sqlDataTable, "EmployeeResign ationReason", True)
    dtContractExpir ey.DataBindings .Add("Text", sqlDataTable, "EmployeeContra ctExpireyDate", True)
    txtPensionE.Dat aBindings.Add(" text", sqlDataTable, "EmployeePensio nEmp", True)
    txtPensionC.Dat aBindings.Add(" text", sqlDataTable, "EmployeePensio nCompany", True)
    cbAdultDeps.Dat aBindings.Add(" text", sqlDataTable, "EmployeeMedAdu ltDeps", True)
    cbChildDeps.Dat aBindings.Add(" text", sqlDataTable, "EmployeeMedChi ldDeps", True)
    cbPaymentMethod .DataBindings.A dd("text", sqlDataTable, "EmployeePayMet hod", True)
    txtBranchCode.D ataBindings.Add ("text", sqlDataTable, "EmployeeBankCo de", True)
    txtBankAccNumbe r.DataBindings. Add("text", sqlDataTable, "EmployeeBankAc cNo", True)
    cbAccountType.D ataBindings.Add ("text", sqlDataTable, "EmployeeBankAc cType", True)
    txtArea.DataBin dings.Add("text ", sqlDataTable, "EmployeeAr ea", True)
    txtCategory.Dat aBindings.Add(" text", sqlDataTable, "EmployeeCatego ry", True)
    txtCostCentre.D ataBindings.Add ("text", sqlDataTable, "EmployeeCostCe ntre", True)
    txtDepartment.D ataBindings.Add ("text", sqlDataTable, "EmployeeDepart ment", True)
    txtOccupation.D ataBindings.Add ("text", sqlDataTable, "EmployeeOccupa tion", True)
    txtPayPoint.Dat aBindings.Add(" text", sqlDataTable, "EmployeePayPoi nt", True)
    sqlConnection.C lose()

    ' Establish Navigation Manager
    sqlManager = DirectCast(Me.B indingContext(s qlDataTable), CurrencyManager )
    Catch sqlexc As SqlException
    MsgBox(sqlexc.M essage, MsgBoxStyle.OkO nly, "SQL Exception Error")
    Catch exc As Exception
    MsgBox(exc.Mess age, MsgBoxStyle.OkO nly, "Connection Failed")
    End Try
    SetText()
    End Sub[/CODE]

    the query used is
    [CODE=sql]USE + My.Settings.sql DataBaseName + vbCrLf & _
    "SELECT * FROM EmployeeDetails ", sqlConnection[/CODE]

    now i have 2 tables, earnings and employees with a commen column called EmployeeID

    now i want to for instance get information from both tables at the same time and update the values of both tables at the same time when im working with the dataTable. the tables information well some of it will need to update each other.

    is this possible with a JOIN... ???
  • ck9663
    Recognized Expert Specialist
    • Jun 2007
    • 2878

    #2
    Is it possible to update two tables at the same time? Technically, no. Stored proc, batches still has to be processed sequentially (the first statement on the batch has to be executed before the second one). But there are work around: Use view.

    Also if you're trying to access table or tables that would require you to build this query, I would recommend you consider views or table-valued functions.

    -- CK

    Comment

    Working...