database
Deploy jurnali: JOIN, anti-join va atomar tuzatish
Easybolt+20 XPflagRequired
/root/sql/db.sqliteda ikki jadval: xizmat(id, nom, muhit, holat, cpu) va deploy(id, xizmat id, versiya, holat, sana). Ba'zi xizmatlar HALI deploy qilinmagan, jurnalda esa 2026-yilgacha bo'lgan eski yozuvlar qolgan. Vazifa q1.sql — deploy tarixi: xizmat.nom, deploy.versiya, deploy.holat (inner join), avval nom, keyin versiya bo'yicha tartib. q2.sql — anti-join : birorta ham deployi YO'Q xizmatlar nomi, tartib bilan. Darsdagi usul: left join ... where ... is null. tuzatish.sql — yozing VA bazada bajaring (sqlite3 /root/sql/db.sqlite 80 bo'lsa 'ogohlantirish', aks holda 'normal' (darsdagi case when usuli); deploydan sana < '2026-01-01' yozuvlarni o'chiring. Muvaffaqiyat mezoni q1/q2 toza nusxada referens bilan AYNAN solishtiriladi; q2 uchun left join ishlatilgani tekshiriladi. Baza HOLATI jonli tekshiriladi: eski deploylar yo'q, holatlar case qoidasiga to'liq mos. tuzatish.sqlda begin/commit va case bo'lishi shart.