sql >> Database teknologi >  >> RDS >> Mysql

hvordan man tilføjer en ny kolonne hver gang jeg kører et pythonprogram

Ændre ikke dit DB-design under kørsel, men design det på en måde, så du vil ændre dataene og ikke strukturen.

Du kunne have to borde. En kaldet Student med kolonner rollno og name , måske PK på rollno hvis det er unikt.

Så har du en anden tabel kaldet Thing (ethvert passende navn, men jeg ved ikke, hvad dine data handler om) med tre kolonner when (datotid), value (ethvert passende navn) (CHAR(1)) og student (samme type som rollno ).

Definer PK over både when og value for at sikre, at hver elev kun har én værdi pr. dato. Definer en FK fra Thing.student til Student.rollno . Nu sørger din DB for at holde dine data (for det meste) konsistente.

Definer indekser afhængigt af dine behov for valg, indsættelser og opdateringer over de forskellige kolonner.

For at forespørge skal du slutte dig til begge tabeller for at få det ønskede resultat, f.eks.

select s.name, t.value
from Student s
left join Thing t on t.student = s.rollno
where t.when == 'whenever'

(Jeg er ikke sikker på mysql-dialekten, så måske er der brug for nogle flere citater. Du er velkommen til at redigere.)




  1. SQL-ydeevne på LEFT OUTER JOIN vs. NOT EXISTS

  2. Hvordan date_part() virker i PostgreSQL

  3. Sådan får du måneden fra en dato i MySQL

  4. Sådan gemmer du en dato og klokkeslæt i MySQL med tidszoneoplysninger