Tema: Re: oracle file db, gal yra?
Autorius: Jornada Del Muerto
Data: 2012-03-30 11:33:11
    Cia mano atveju toks delikatus trick'sas yra, klientas sukures programa kitam klientui, o veliau padares universalia jos versija ir dabar nori pritaikyt universalia ir sitam klientui, kur buvo tokia pati progama tik neuniversali. O pagal ju universalu standarta jie siuncia vienu ID maziau, kurio ir reikia laikytis.

    Na ir yra tam tikri duomenys, mazdaug:

users
-----
UserId
UserId2
Name

objects
-----
ObjectId
ResponsibleUserId -- atsakingas uz objekta useris (abejuose variantuose  prisiskiria  UserId)
DedicatedUserId -- useris kuris naudoja objekta (universaliam variante prisiskiria UserId, adaptuojamam variante UserId2)
ir t.t...
    
    Tai va universalioje strukturoje eina taspats id objektu siem abiem userId laukams, o senoje versijoje, eina skirtingi ID, nes ju sistemos DB kitokia, bet as negaliu imt 2 useriuID nes programos i kuria eksportuojama keisti negalima ir net jei ji ir perdavus su antru id nieko nedarys tas softas.

    Del to as darau taip:

SELECT UserId, Name FROM  users

SELECT 
    O.ObjectId, 
    O.ResponsibleUserId, 
    U.UserId AS DedicatedUserId
    O.Name
INNER JOIN users U On O.DedicatedUserId = U.UserId2 

Cia suzinau koks to userio UserId pagal priskirta objektui UserId2 kadangi abu id kiekviens useris turi ir paduodu viena id.

Dabar atgal einant duomenim reikia man viska atkeist i savo vietas:)

Pakolkas tai padariau mazdaug taip:

1. Eksporto startas:

SELECT UserId, UserId2 FROM users

Mapinu rezultata i Dictionary<string,string>

Tada gaunu objektu duomenis ir sukeitineju pagal dictionary map kiekviena ID atiduodamas, kur pagal userId paimu userId2... :)

Na cia aisku su update su inner join butu geriau.

JDM.