Ny faniriako ho an'ny DBMS amin'ny ho avy, ary koa ny Rosreestr amin'ny resaka transactionality

Ny faniriako ho an'ny DBMS amin'ny ho avy, ary koa ny Rosreestr amin'ny resaka transactionality
Mifandray amin'ny angon-drakitra ny mpanjifa.
Avy amin'ny tranokala http://corchaosis.ru, nataon'i Jonathan Tiong.

Ho fanampin'ny maha-programme ahy (indrindra Delphi + DBMS isan-karazany, ORACLE vao haingana, + PHP kely), dia manana fialamboly aho - mividy sy mivarotra trano. Nividy trano aho nandritra ny dingan'ny fanorenana avy amin'ny developer azo antoka kokoa na tsy dia azo itokisana amin'ny vidiny tsara (ohatra, ankehitriny i Samolet dia mpamorona toy izany, amidy ny trano akaikin'ny gara metro Nekrasovka), miandry ny hanaterana ny trano (matetika roa. taona aty aoriana, mitranga izany amin'ny tolotra mora), manavao azy aho ary amidiko amin'ny 95-100% amin'ny vidin'ny tsena.

Noho izany, izaho (tahaka ny olon-drehetra) dia niatrika ny olan'ny tsy fisian'ny transactionality an'i RosReestr.

Ny olan'ny tsy fahampian'ny fifampiraharahana amin'ny Rosreestr

Ao amin'ny fandaharana dia "Transaction", ary amin'ny trano dia "Transaction with Alternative" (ary koa, ao anatin'izany, "Safe Deposit Box Agreement"), ary somary sarotra kokoa izany. lazaiko aminao.

Tonga nijery ilay trano namidin’i Petya i Vasya. Ary tena tian'i Vasya ny zava-drehetra, anisan'izany ny vidiny, saingy tsy manam-bola i Vasya. Toy izany no manomboka ny tantarantsika.

Vasya dia manana ny fananany, izay manana soatoavina sasany izay tsy tena ilaina ho azy - Lomonosov nipetraka tao amin'ny trano manodidina, ny haavon'ny valindrihana dia fito metatra sy sasany, misy voankazo sy legioma fototra sy ny tsena Sadovod. eo akaiky eo, afaka mandeha amin'ny Aeroexpress ianao, eo ambanin'ny trano dia misy lakaly misy haavo 1 metatra, misy tafo eo ambonin'ny trano mety amin'ny fandinihana astronomika. Takatr'i Vasya fa ireo endri-javatra ireo dia mampitombo ny vidin'ny tranony, fa tsy ho an'ny tenany. Ary nanapa-kevitra ny hividy ny tranon'i Petya izy ary hivarotra ny tranony manokana. Fa mivarotra marina mba hividianana ny tranon'i Petya, fa tsy fotsiny. Amin'ny fitenin'ny mpivarotra trano dia antsoina hoe "Afa-tsy iray no voafidy."

Andeha hojerentsika izao toe-javatra avy amin'i Petya izao. Ny zava-misy dia tsy liana amin'ny fipetrahana amin'ny vola mitongilana koa i Petya, mivarotra ny trano izy mba hividianana trano iray ao amin'ny tanΓ nan'i Valinor, saingy tsy mbola nijery izay iray izy. Amin'ny fitenin'ny mpivarotra trano dia antsoina hoe "Fifanarahana amin'ny safidy hafa."

Ny elf roa avy any Middle-Earth, Maglor sy Maedhros, dia manana trano mety (araka ny fepetran'i Petya) ao an-tanΓ nan'i Valinor, izay amidy maika, satria hanompo an'i Melkor izy ireo. Amin'ny fitenin'ny mpivarotra trano dia antsoina hoe "Free Sale".

Noho izany, i Vasya dia mahita mpanjifa, Seryozha. Ankehitriny, Petya dia mahita safidy roa mety ho azy ao an-tanΓ nan'i Valinor. Saika hamarana ny fifanarahana izahay. Aoka hataontsika ho tsotra fa tsy misy amin'ireo antoko amin'ny fifampiraharahana mampiasa fampindramam-bola ary tsy manana zaza tsy ampy taona ho tompony. Noho izany dia tsy maintsy atao izao hetsika manaraka izao:
1. Seryozha manome vola an'i Petya.
2. Nomen'i Vasya an'i Seryozha ny tranony.
3. Nomen'i Petya an'i Vasya ny tranony.
4. Na i Maglor na i Maedhros dia mamindra ny trano fonenany ao Valinor mankany Peta ary mandray ny volan'i Seryozha.
5. Nankany Mordora i Malkor sy i Maedhros mba hanompo an’i Melkor.

Mety tsara ny manolotra ity script manaraka ity amin'ny Rosreestr hovonoina:

Atombohy ny TRANSACTION
Omeo an'i Seryozha ny tranon'i Vasya.
Omeo an'i Vasya ny tranon'i Petya.
manomboka
Omeo an'i Petya ny tranon'i Malkor
Omeo an'i Malkor ny volan'i Seryozha
IF_ERROR:
Omeo an'i Petya ny tranon'i Maedhros
Omeo an'i Maedhros ny volan'i Seryozha
tapitra
MANAO TRANSACTION

Ity dia sora-baventy tsotsotra miaraka amin'ny safidy hafa, izay mihevitra fa ny trano rehetra dia manana olon-dehibe iray (ary mahay) tompony, fa mitovy ny sandany, ary ny mpivarotra (raha misy) dia karamaina na inona na inona dingana amin'ny fifampiraharahana.

Na izany aza, Rosreestr dia tsy manohana transactionality. Ny hetsika rehetra dia hatao misesy sy tsy miankina, mifandimby, tsy hamerenana ny fifampiraharahana amin'ny ankapobeny raha tsy mahomby ny iray amin'izy ireo. Ny ambony indrindra azo tratrarina - raha tsy miasa amin'ny famindrana vola ny Rosreestr sy ny MFC - dia ny fametrahana ny vola ao anaty boaty azo antoka, miaraka amin'ny fepetra ahafahana miditra amin'izany avy amin'i Vasya, Petya, Seryozha (raha tsy misy fifampiraharahana). dia misoratra anarana mihitsy), ary ireo mpisehatra hafa, rehefa nanolotra ny fifanarahana nosoratan'i Rosreestr. (Ary raha ny marina, ny banky dia tsy manamarina ny maha-azo itokiana ny fifanarahana, izany hoe matoky ny maha-azo itokiana ny taratasin'ireo antoko amin'ny fifampiraharahana).

Ankoatra ny loza mety hitranga amin'ny tsy fahavitan'ny fifampiraharahana, ny olana iray hafa dia ny hoe raha afaka miditra ao amin'ny tranony vaovao ny mpandray anjara hafa tsy miandry ny fisoratana anarana feno (miarahaba, ny olana momba ny tsy fandoavana ny faktiora faktiora!), dia tsy ho ela i Maglor sy Maedhros manompo an'i Melkor, ary angamba tsy ho vitan'i Maglor fa tsy hanam-potoana hihazonana ny Silmarils eo an-tanany. Ny raharaham-barotra momba ny trano dia atao misesy, ary ny fanatanterahana ny varotra tsirairay dia haharitra 9 andro fiasana farafahakeliny.

Ankoatra izany, Rosreestr dia tsy manohana ny enta-mavesatry ny trano aorina eo ambanin'ny DDU, fa mety ho hetsika fototra mifandraika amin'ny hoavy tsotra izany.

Andeha isika izao hiroso amin'ny lesoka sy ny faniriako momba ny DBMS

1) Ny voalohany dia ny tsy fisian'ny rafitra fanaraha-maso version. Raha eo amin'ny lafiny Delphi aho dia mivoatra ao amin'ny boaty fasika manokana, ary ny fanovana ataoko dia tsy hiseho amin'ny mpandrindra hafa mandra-pahavitan'izy ireo, dia tsy izany no mitranga amin'ny DBMS. Ary na dia azo atokisana tanteraka (farafaharatsiny ao anatin'ny faritry ny zavatra ilaina amin'ny asa nomena ahy) ny fidirana amin'ny angon-drakitra momba ny ady, ary mitranga izany, tsy afaka mivoatra amin'izany aho. Rehefa manao debugging aho dia hirodana ny zava-drehetra. Karazana Vato inona moa ity??? Manaova boaty fasika ho an'ny mpamorona.

2) Ny faharoa dia ny tsy fisian'ny tabilao manara-penitra efa voafaritra mialoha mamaritra ny tontolo tena izy. Ny orinasa rehetra niasako dia manana ny endrika latabatra misy azy manokana mamaritra ny anarana (amin'ny teny Rosiana sy (farafaharatsiny) anglisy, amin'ny tranga samihafa amin'ny teny Rosiana) mandritra ny roa ambin'ny folo volana!

3) Fahatelo - ary eto aho dia hampiasa ny voambolana Oracle - tsy misy fomba hiantsoana script Insert na Update tsotra izay mampiasa Returning, mitovy amin'ny antsointsika hoe Select. Angamba tsy olana Oracle ireo, fa olana amin'ny interface Delphi + Oracle.

4) Fahefatra - ny ilΓ na ny hanendry fahefana amin'ireo fomba fiasa sy asa noforoniko izay tsy tiako hanaovana izany. Tsy te hametraka sy hanova ny fahazoan-dΓ lana mpampiasa ho an'ny fomba fiasa sy ny fiasa aho. Nahoana, raha tsy nanoratra mazava tsara ny Grants aho, dia tsy afaka mijery ireo zavatra tafiditra amin'izany ny rafitra, ary, mifanaraka amin'ny zo hiara-miasa amin'izy ireo, manome na tsia ny mpampiasa sasany ny zo hiantso asa? Vonona aho hanoratra teny fototra iray momba izany rehefa manoratra asa sy fomba fiasa. Na, tsara kokoa aza, avelao ny mpampiasa hanomboka ny famonoana, ary raha ny sampana algorithm dia mitarika azy amin'ny fangatahana izay tsy ananan'ny mpampiasa zo, dia hatsipiny amin'ny fahadisoana izany.

Source: www.habr.com

Add a comment