Mokhoa oa ho khaotsa ho etsa ntho e tšoanang

Na u rata ho pheta-pheta ts'ebetso khafetsa? Kahoo ha ke etse joalo. Empa nako le nako ho mofani oa SQL ha ke sebetsa le polokelo ea Rostelecom, ke ne ke tlameha ho ngolisa lihlopha tsohle pakeng tsa litafole ka letsoho. 'Me sena se sa tsotellehe hore ho 90% ea linyeoe masimo le maemo a ho kopanya litafole li ne li lumellana ho tloha ho potso ho ea ho potso! Ho ne ho tla bonahala eka moreki ofe kapa ofe oa SQL o na le mesebetsi ea ho tlatsa ka boits'oaro, empa bakeng sa polokelo ha e sebetse kamehla: ha se hangata ba kenyelletsang lithibelo tse ikhethang le senotlolo sa kantle ho naha molemong oa ho ntlafatsa ts'ebetso, mme ntle le sena lenaneo le ke ke la tseba hore na mekhatlo e amana joang le e 'ngoe le e 'ngoe. tse ling le tseo e ka u etsetsang tsona ho fana ka tsona.

Mokhoa oa ho khaotsa ho etsa ntho e tšoanang

Ka mor'a ho hana, ho halefa, ho buisana, ho tepella maikutlong le ho amoheloa, ke ile ka etsa qeto - ke hobane'ng ha u sa leke ho kenya ts'ebetsong ea "autofill" ka blackjack 'me ke e etse ka tsela e nepahetseng? Ke sebelisa moreki oa dbeaver, e ngotsoeng ka java, e na le mofuta o bulehileng oa sechaba. Morero o bonolo o phethehile:

  1. Fumana litlelase ho khoutu ea mohloli tse ikarabellang bakeng sa ho phethela ka bohona
  2. Li tsamaise hape hore li sebetse ka metadata ea kantle 'me u hule tlhahisoleseling mabapi le ho kopanya ho tloha moo
  3. ??????
  4. ETSAHALA

Ke ile ka nahana ntlha ea pele kapele haholo - ke fumane kopo ho tracker ea bug ho lokisa tlatsetso le ho tse amanang. itlama e fumane sehlopha sa SQLCompletionAnalyzer. Ke ile ka sheba khoutu mme ke seo ke se hlokang. Ho setseng ke ho e ngola hape e le hore tsohle li sebetse. Ke ile ka emela mantsiboeeng a mahala mme ka qala ho nahana ka ts'ebetsong. Ke nkile qeto ea ho ngola melao ea khokahano ea tafole (metadata) ho json. Ke ne ke se na boiphihlelo bo sebetsang ba ho sebetsa ka sebopeho sena mme mosebetsi oa hajoale o ne o nkuoa e le monyetla oa ho lokisa ho siuoa hona.

Ho sebetsa le json ke nkile qeto ea ho sebelisa laeborari json-bonolo ho tsoa ho Google. Mona ke moo lintho tse makatsang li qalileng teng. Ha e le hantle, dbeaver, e le kopo ea 'nete, e ngotsoe sethaleng sa Eclipse ho sebelisa moralo oa OSGi. Bakeng sa bahlahisi ba nang le boiphihlelo, ntho ena e etsa hore ho be bonolo ho laola litšepe, empa ho 'na e ne e tšoana le boselamose bo lefifi, boo ho hlakileng hore ke ne ke sa itokisetsa: joalo ka tloaelo, ke kenya litlelase tseo ke li hlokang ho tsoa laebraring e bonolo ea json ka hloohong ea. sehlopha se hlophisitsoeng, e hlalose ka pom.xml, ka mor'a moo morero o hana ka ho feletseng ho kopana ka mokhoa o tloaelehileng mme o thulana le liphoso.

Qetellong, ke khonne ho lokisa liphoso tsa kaho: Ke ngolisitse laeborari eseng ka pom.xml, empa ho manifest.mf manifest, joalo ka ha ho hlokoa ke OSGI, ha ke ntse ke e hlalosa e le import-package. Hase tharollo e ntle ka ho fetisisa, empa e sebetsa. Joale ntho e latelang e makatsang e ile ea hlaha. Haeba u ntse u nts'etsapele Intellij Idea, u ke ke ua ea feela 'me ua qala ho lokisa morero oa hau ho latela sethala sa ho fifala ha letsatsi: moqapi ea se nang boiphihlelo ha aa lokela ho utloa bohloko ka tlase ho mohlahlobi ntle le ho phethela potso. Bahlahisi ba li-beaver ka bobona ba ile ba tla ho thusa, ba bontša ka wiki metjeko eohle e nang le moropa e lokelang ho etsoa. Ntho e khopisang ka ho fetisisa ke hore le ka mor'a li-squats tsena kaofela, morero o ne o sa batle ho qalisoa ka ho rarolla bothata ka laebrari ea json e hokahaneng ka ho kenya thepa (leha e ne e ntse e kopantsoe ka katleho sehlahisoa se felileng).

Ka nako eo, ke ne ke se ke hlokometse tšitiso ea ho sebelisa json bakeng sa mosebetsi oa ka - ka mor'a moo, metadata e ne e lokela ho hlophisoa ka letsoho, 'me sebopeho sa xml se loketse sena hamolemo. Khang ea bobeli e emelang xml e ne e le boteng ba lihlopha tsohle tse hlokahalang ho JDK, tse entseng hore ho khonehe ho emisa ho loana le laeborari ea kantle. Ka thabo e kholo, ke fetisitse metadata eohle ho tloha ho json ho ea ho xml mme ka qala ho hlophisa logic e feletseng.

Mohlala oa metadata

<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<tableRelations>
    <tableRelation>
        <leftTable>dim_account</leftTable>
        <rightTable>dim_partner</rightTable>
        <joinColumnPair leftColumn="partner_key" rightColumn="partner_key"/>
        <joinColumnPair leftColumn="src_id" rightColumn="src_id"/>
    </tableRelation>
    <tableRelation>
        <leftTable>dim_account</leftTable>
        <rightTable>dim_branch</rightTable>
        <joinColumnPair leftColumn="src_id" rightColumn="src_id"/>
        <joinColumnPair leftColumn="branch_key" rightColumn="branch_key"/>
    </tableRelation>
</tableRelations>

Ka lebaka leo ke entse liphetoho lihlopheng tsa SQLUtils le SQLCompletionAnalyzer. Mohopolo ke ona: haeba lenaneo le ne le sa khone ho fumana litlhahiso tse loketseng tse felletseng ka mokhoa oa motheo, joale le hlahloba boteng ba ho kopanya ho ka khonehang ho sebelisa faele ea xml e kantle. Faele ka boeona e boloka lipara tsa litafole tse bontšang libaka tseo litafole tsena li lokelang ho hokahana ka tsona. Lithibelo ho matsatsi a bonnete ba lirekoto eff_dttm le exp_dttm le folaga e hlakileng ea ho hlakola deleted_ind li behiloe ka mokhoa oa kamehla.

Ha liphetoho li etsoa khoutu, potso e ile ea hlaha - ke mang ea tla tlatsa faele ka metadata? Ho na le mekhatlo e mengata sebakeng sa polokelo, ho bitsa chelete e ngata ho ngolisa likhokahano tsohle ka bouena. Ka lebaka leo, ke ile ka etsa qeto ea ho abela bahlahlobisisi-’moho le ’na mosebetsi ona. Ke kentse faele ea metadata ho svn, ho tloha moo ho lefelloang ho tsoa bukeng ea lehae ka lenaneo. Molao-motheo ke ona: na setheo se secha se hlahile sebakeng sa polokelo? Mohlahlobisisi e mong o kena ka har'a faele e ka khonehang, o etsa liphetoho, ba bang kaofela ba itlhahloba 'me ba natefeloa ke ho phetheloa ha koloi: sechaba, pokello ea tsebo le tseo tsohle. E ile ea etsa thupelo ea ho sebelisa lenaneo bakeng sa basebetsi-'moho, e ngotse sengoloa ho Confluence - hona joale k'hamphani e na le sesebelisoa se le seng se loketseng.

Ho sebetsa ka tšobotsi ena ho ile ha mpha kutloisiso ea hore ha ho hlokahale hore u tšabe ho tinker ka merero e bulehileng ea mohloli - e le molao, ba na le mohaho o hlakileng, esita le tsebo ea motheo ea puo e tla lekana bakeng sa liteko. 'Me ka ho phehella ho itseng, u tla khona ho tlosa ts'ebetso ea tloaelo e hloiloeng, u boloke nako ea liteko tse ncha.

Source: www.habr.com

Eketsa ka tlhaloso