"Toinen käyttäjä on muuttanut tätä tietuetta" -virhe tallennettaessa muokattua tietuetta Accessissa

Alkuperäinen KT-numero: 837937

Huomautus

Tämä artikkeli koskee vain Microsoft Access -projektia (.adp). Edellyttää makrojen, koodauksen ja yhteensopivuuden perustaitoja.

Oireet

Kun muokkaat tietuetta monitaulukkoiseen näkymään perustuvassa lomakkeessa ja työskentelet usean käyttäjän ympäristössä, et ehkä onnistu, kun yrität tallentaa tietueen muutokset. Saatat saada myös seuraavan virhesanoman Kirjoitusristiriita-valintaikkunassa :

Toinen käyttäjä on muuttanut tätä tietuetta sen jälkeen, kun aloit muokata sitä. Jos tallennat tietueen, korvaat toisen käyttäjän tekemät muutokset.
Kopioimalla muutokset leikepöydälle voit tarkastella toisen käyttäjän syöttämää arvoa ja liittää tekemäsi muutokset takaisin, jos päätät tehdä muutokset.

Jos napsautat joko Kopioi Leikepöydälle tai Pudota muutoksetKirjoitusristiriita-valintaikkunassa , saatat huomata, että tietueeseen tekemäsi muutokset kumotaan ja että toisen käyttäjän tekemään tietueeseen tehdyt muutokset ovat nyt näkyvissä. Jos kuitenkin muokkaat samaa tietuetta uudelleen ja yrität tallentaa tietueen, näyttöön saattaa tulla virhesanoma, joka mainitaan "Oireet"-osiossa uudelleen.

Saatat myös huomata virheilmoituksen, joka mainitaan "Oireet"-osiossa ajoittain, kun valitset Tallenna tietue.

Huomautus

Tämä ongelma ei ehkä näy, kun käytät Microsoft Access 2000:aa.

Vaihtoehtoinen menetelmä

Voit kiertää tämän ongelman käyttämällä jotakin seuraavista menetelmistä:

  • Monitaulukkoiseen näkymään perustuvan lomakkeen päivittäminen

    "Oireet"-osiossa mainitun virhesanoman ensimmäisen esiintymän kohdalla sinun on napsautettava joko Kopioi Leikepöydälle tai Pudota muutoksetKirjoitusristiriita-valintaikkunassa . Jos haluat välttää "Oireet"-osiossa mainitun virhesanoman toistumisen, sinun on päivitettävä lomakkeen tietuejoukko, ennen kuin muokkaat samaa tietuetta uudelleen.

    Huomautuksia

    • Päivitä lomake Access 2003:ssa tai Access 2002:ssa valitsemalla Tietueet-valikosta Päivitä.
    • Päivitä lomake Access 2007:ssä valitsemalla Aloitus-välilehden Tietueet-ryhmästäPäivitä kaikki.
  • Päälomakkeen käyttäminen linkitetyn alilomakkeen kanssa

    Jos haluat välttää "Oireet"-osiossa mainitun virhesanoman toistumisen, voit käyttää päälomaketta linkitetyn alilomakkeen kanssa tietojen syöttämistä varten liittyviin taulukoihin. Voit kirjoittaa molempien taulukoiden tietueet yhdestä sijainnista käyttämättä monitaulukkoiseen näkymään perustuvaa lomaketta.

    Jos haluat luoda päälomakkeen linkitetyllä alilomakkeella, toimi seuraavasti:

    1. Luo uusi lomake, joka perustuu monitaulukkonäkymässä käytettävään liittyvään (alitaulukkoon). Sisällytä pakolliset kentät lomakkeeseen.

    2. Tallenna lomake ja sulje lomake.

    3. Luo uusi lomake, joka perustuu ensisijaiseen taulukkoon, jota käytetään usean taulukon näkymässä. Sisällytä pakolliset kentät lomakkeeseen.

    4. Lisää Vaiheessa 2 tallentamäsi lomake Tietokanta-ikkunassa päälomakkeeseen.

      Tämä luo alilomakkeen.

    5. Määritä alilomakkeen Linkitä aliobjektin kentät - ominaisuus ja Pääobjektin linkkikentät -ominaisuudeksi sen kentän tai kenttien nimi, jota käytetään taulukoiden linkittämiseen.

Tila

Microsoft on vahvistanut, että kyseessä on Microsoft-tuotteiden ohjelmavirhe, joka on lueteltu "Koskee"-osiossa.

Lisätietoja

Usean käyttäjän ympäristössä Microsoft Access -projekti (.adp) käyttää tekniikkaa, jonka nimi on optimistinen tietueiden lukitus tietueriidan käsittelemiseksi. Siksi, kun useampi kuin yksi käyttäjä käsittelee samaa tietuetta samanaikaisesti, yksi käyttäjistä voi saada virheilmoituksen, joka mainitaan "Oireet"-osiossa. "Oireet"-osiossa mainittu virhesanoma saattaa kuitenkin ilmestyä myös ajoittain, kun kaikki seuraavat ehdot täyttyvät:

  • Lomake perustuu usean taulukon näkymään.
  • Usean taulukon näkymä perustuu taulukoihin, jotka liittyvät pää- ja alielementtisuhteeseen.
  • Toinen käyttäjä on muuttanut muokattavan tietueen ja hyväksynyt sen jälkeen, kun aloit muokata tietuetta.

Saatat huomata, että sama ongelma ilmenee, kun käytät monitaulukkonäkymää suoraan usean käyttäjän ympäristössä.

Ongelman toistamisen vaiheet

  1. Käynnistä Access.

  2. Avaa NorthwindCS.adp-mallitietokantaprojekti.

  3. Valitse Tietokanta-ikkunassa Objektit-osiosta Kyselyt.

    Huomautus

    Valitse Access 2007:ssä Ohjattu kyselyn luominenLuo-välilehdenMuut-ryhmästä.

  4. Kaksoisnapsauta oikeanpuoleisessa ruudussa Luo näkymä suunnittelutyökalussa.

    Huomautus

    Valitse Access 2007:n Uusi kysely -valintaikkunassa Rakennenäkymä ja valitse sitten OK.

  5. Kaksoisnapsauta Lisää taulukko -valintaikkunassa sekä Tilaukset - että Tilaustiedot-kohtaaTaulukot-välilehdessä ja valitse sitten Sulje.

  6. Kirjoita tai liitä seuraava kysely SQL-ruutuun:

    SELECT     
    dbo.Orders.OrderID, 
    dbo.[Order Details].ProductID, 
    dbo.[Order Details].Quantity, 
    dbo.Orders.ShipName
    FROM         
    dbo.Orders 
    INNER JOIN
    dbo.[Order Details] 
    ON 
    dbo.Orders.OrderID = dbo.[Order Details].OrderID
    

    Huomautuksia

    Huomautus

    • Jos SQL-ruutu ei ole näkyvissä Access 2003:ssa tai Access 2002:ssa, osoita Näytä-valikon Näytä ruudut -kohtaa ja valitse sitten SQL.
    • Avaa SQL-ruutu valitsemalla Access 2007:n Rakenne-välilehdenTyökalut-ryhmästäSQL.
  7. Tallenna näkymä nimelläOrderView.

  8. Valitse Näytä-valikostaTaulukkonäkymä.

    Huomautus

    Napsauta Access 2007:n Rakenne-välilehdenNäytä-kohdan alla olevaa nuolta ja valitse sitten Taulukkonäkymä.

  9. Muokkaa tietuetta OrderView-näkymässä.

    Huomautus

    Varmista, että tietuetta ei ole tallennettu.

  10. Avaa toinen NorthwindCS.adp-mallitietokantaprojektin esiintymä.

  11. Muokkaa samaa tietuetta, jota muokkasit vaiheessa 9.

  12. Valitse Tietueet-valikostaTallenna tietue.

    Huomautus

    Napsauta Access 2007:ssä Microsoft Office -painiketta ja valitse sitten Tallenna.

    Näyttöön saattaa tulla virhesanoma, joka mainitaan "Oireet"-osiossa.