Sqlserver: data attuale

  • Creatore Discussione Creatore Discussione Laskot
  • Data di inizio Data di inizio

Laskot

Nuovo Utente
5 Giu 2017
15
0
1
29
Ciao a tutti,
nel contesto di una biblioteca online devo permettere ai miei utenti di mandare una richiesta di prestito ai dipendente della biblioteca. Nel mio DB la tabella richiesta ha come attributi libro,utente e datainizio. Il problema è che vorrei evitare di specificare sempre la data di oggi e fare in modo che sia automatico.

Ho cercato su internet e ho trovato timestamp, ho provato: ho creato la tabella richiesta che ha l'attributo data che ha come tipo timestamp, e libro. Ho provato ad inserire solo il titolo del libro, ma la data non viene generata in automatico e mi viene dato questo errore: sintassi di input non valida per il tipo timestamp: "La torre nera".
Come posso fare? Grazie per l'aiuto :)
 
ultimamente i "false friends" sono ricorrenti,
dal manuale
https://msdn.microsoft.com/en-us/library/ms182776(v=SQL.90).aspx
Is a data type that exposes automatically generated, unique binary numbers within a database.
timestamp is generally used as a mechanism for version-stamping table rows.
The storage size is 8 bytes.
The timestamp data type is just an incrementing number and does not preserve a date or a time.
To record a date or time, use a datetime data type.
forse meglio usare
upload_2017-7-4_13-20-32.png

in una colonna definita "datetime"
 
Ok grazie, quindi timestamp non fa al caso mio ? Ma quindi definisco il tipo dell'attributo datetime e dopo quando devo definire la mia action php scrivo $query= "INSERT INTO richiesta (datainizio, titolo, utente) VALUES (GETDATE()...) ?
Devo fare così ?
 
Puoi usare un default nella colonna data impostato su GetDate().
GetDateti restistituisce la data-ora del sistema (datetime) e se a te basta la data puoi fare un cast esplicito a "date" (oppure anche implicito).
 

Discussioni simili