AI ni rahisi sana kwa ubadilisho wa muundo (CSV ↔ JSON ↔ SQL) na scripts za uhamiaji kwa sababu sheria za mabadiliko ni kiufundi. Ujanja ni kumpa muktadha wa kutosha kuwa sahihi na salama: schema, safu ya sampuli, na mahitaji ya usalama wazi.
AI ni rahisi sana kwa ubadilisho wa muundo (CSV ↔ JSON ↔ SQL) na scripts za uhamiaji kwa sababu sheria za mabadiliko ni kiufundi. Ujanja ni kumpa muktadha wa kutosha kuwa sahihi na salama: schema, safu ya sampuli, na mahitaji ya usalama wazi.
import csv
# Source CSV: id,email,signup_date (signup_date may be blank)
# Target table: users(id INT, email TEXT NOT NULL, signup_date DATE NULL)
def csv_to_sql(path: str) -> list[str]:
statements = []
with open(path, newline="", encoding="utf-8") as f:
for row in csv.DictReader(f):
email = row["email"].strip()
if not email: # validate: skip invalid rows, don't insert garbage
continue
date = row["signup_date"].strip() or None
email_sql = email.replace("'", "''") # escape quotes to avoid broken SQL / injection
date_sql = f"'{date}'" if date else "NULL"
# ON CONFLICT makes it idempotent: re-running won't create duplicates
statements.append(
f"INSERT INTO users (id, email, signup_date) "
f"VALUES ({int(row['id'])}, '{email_sql}', {date_sql}) "
f"ON CONFLICT (id) DO NOTHING;"
)
return statements
Maoni yanaonyesha sehemu muhimu: uthibitisho (ruka barua pepe tupu), escaping (manukuu) na idempotence (ON CONFLICT DO NOTHING). Omba AI kuingiza zote tatu — hii ndio vitu ambavyo script naïve inasahau.
Uhamiaji wa data una hatari ya juu na kawaida ni mara moja: script inayoingiza maiga au kuangusha safu inaweza kuwa ghali kutenganisha. AI inaharakisha kuandika ubadilisho, lakini mali ya usalama — idempotence, uthibitisho, na dry-run kwenye nakala — haziwezi kukubaliwa. Tilimu script iliyojifanya kama rasimu ambayo lazima useme na ujaribu, kamwe sio kitu unachoeneza kwa njia ya ushindi dhidi ya data halisi.
Maktaba ya maswali ya mahojiano ya IT yenye majibu ya kina — kutoka Junior hadi Senior.
Changia