[Python] info su db

enrico franchi enrico.franchi a gmail.com
Mer 5 Mar 2014 18:05:39 CET


2014-03-05 16:21 GMT+00:00 Daniele Varrazzo <piro a develer.com>:

> Separare nome è cognome è un'idea regolare, ma un po' limitata (ho sempre
> l'esempio del mio collega che non ha il cognome).
>

Interessante... non ci avevo effettivamente pensato. Piu' ci sono tutte le
magagne su middle name (che da noi e' poco comune) et similia.


> Avere sia data ingresso che data uscita nello stesso record è giustissima:
> se un record rappresenta un periodo devono essere riportati sia inizio che
> fine, usare "il record di prima" come inizio porta a complicazioni
> terribili.
>

+1


Utente: id, nome, cognome, indirizzo ecc..
Tag: id (del db, forse non necessario), identificativo (quello che il
lettore legge), emesso il, ritirato il, motivo del ritiro ecc.
Utente per tag: quale utente, quale tag, da quando l'ha avuto, fino a
quando l'ha avuto.
Lettura: id, quale tag, quale lettore, a che ora.
Presenza: id lettura in, id lettura out.
Lettore: id, ...tutte le informazioni che servono

Io andrei piano con tutti questi id. Quando c'e' un ID naturale, niente da
dire (e.g., employee id).
Pero' mettere gli ID per non usare chiavi primarie "vere", non mi piace
tanto. Tipicamente un evento di lettura e' verosimilmente identificato
univocamente da utente, ora, verosimilmente quale lettore lo ha fatto.

Nota che una lettura è un evento imprescindibile: quella cosa è successa.
Una "presenza" è una policy: mette in relazione due letture nel caso più
normale ma potrebbero succedere cose strane: tipo uno che entra ed esce in
modo imprevisto (in barella? o semplicemente il lettore era rotto?) per cui
mi sembra giusto separare le Letture (da registrare) dalle Presenze (da
ricostruire). Potresti anche avere quello che entra, passa il tag a quello
dietro e quello entra anche lui: è vietato da una policy, non dalla fisica.

+1

Inoltre, a meno che non abbiano policy molto strette, si scazzeranno sempre
le cose.
Tipo in un dc tenuto bene ti vengono a prendere se sei nella stanza
sbagliata perche' hai tailato o hai chiuso una porta senza passarla.
Ma se questo non avviene, ti trovi con un maciello.






-- 
.
..: -enrico-
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.python.it/pipermail/python/attachments/20140305/6b5a9779/attachment.html>


Maggiori informazioni sulla lista Python