Bonjour,
J'ai une colonne type DATETIME que je veux mettre à DEFAULT avec la date système
J'arrive à adapter la fonction CURRENT_DATE() pour ce besoin ....?Code:DATE_RECEPTION DATETIME DEFAULT "SYSDATE" NOT NULL
MERCI.
A+
Version imprimable
Bonjour,
J'ai une colonne type DATETIME que je veux mettre à DEFAULT avec la date système
J'arrive à adapter la fonction CURRENT_DATE() pour ce besoin ....?Code:DATE_RECEPTION DATETIME DEFAULT "SYSDATE" NOT NULL
MERCI.
A+
Salut Dari68.
Donc pas de guillemets et il manque les parenthèses puisque c'est une fonction.Code:
1
2
3
4
5
6
7
8 select sysdate() -------------- +---------------------+ | sysdate() | +---------------------+ | 2021-07-10 00:58:11 | +---------------------+
@+
MERCI Artemus,
A+
Bon weekend.
Bonjour,
Code:
1
2
3
4
5
6
7
8
9
10
11
12 create table ma_table ( ma_ident integer auto_increment primary key , ma_ts timestamp not null default current_timestamp , ma_date DATE not null default (date_format(NOW(), '%Y-%m-%d')) , ma_truc char(5) ) ; insert into ma_table (ma_truc) values ('abcd'), ('efgh'), ('qsdf') ; select * from ma_table ;
Résultat :
ma_ident ma_ts ma_date ma_truc 1 2021-07-10 14:21:56 2021-07-10 abcd 2 2021-07-10 14:21:56 2021-07-10 efgh 3 2021-07-10 14:21:56 2021-07-10 qsdf
Salut à tous.
Je ne sais pas pourquoi, mysql autorise à faire référence à une fonction, sans paramètre, sans préciser les parenthèses.
@ Escartefigue : il n'est pas nécessaire de formater la date quand tu initialises une colonne de type "date" à partir de la fonction "now()".
Bon week-end à tous. :D
@+
Mysql V8 accepte default current_timestamp, mais ni defaut now(), ni default current_date, ni default sysdate().
Date_format permet d'affecter la valeur par défaut sans avoir d'erreur ;)
Salut Escartfigue.
Il y a quelques particularités qu'il faut connaitre avec MySql.
Si ce sont des fonctions, la valeur par défaut doit être mise entre parenthèses :
Va savoir pourquoi ???Code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49 -------------- START TRANSACTION -------------- -------------- DROP DATABASE IF EXISTS `base` -------------- -------------- CREATE DATABASE IF NOT EXISTS `base` DEFAULT CHARACTER SET `latin1` DEFAULT COLLATE `latin1_general_ci` -------------- -------------- DROP TABLE IF EXISTS `test` -------------- -------------- CREATE TABLE `test` ( `ma_ident` integer unsigned NOT NULL AUTO_INCREMENT primary key, `ma_ts` timestamp NOT NULL default (current_timestamp), `ma_date` date NOT NULL default (current_date), `ma_truc` char(05) NOT NULL ) ENGINE=InnoDB DEFAULT CHARSET=`latin1` COLLATE=`latin1_general_ci` ROW_FORMAT=COMPRESSED -------------- -------------- insert into `test` (`ma_truc`) values ('abcd'),('efgh'),('qsdf') -------------- -------------- select * from `test` -------------- +----------+---------------------+------------+---------+ | ma_ident | ma_ts | ma_date | ma_truc | +----------+---------------------+------------+---------+ | 1 | 2021-07-10 19:24:00 | 2021-07-10 | abcd | | 2 | 2021-07-10 19:24:00 | 2021-07-10 | efgh | | 3 | 2021-07-10 19:24:00 | 2021-07-10 | qsdf | +----------+---------------------+------------+---------+ -------------- COMMIT -------------- Appuyez sur une touche pour continuer...
@+
bien vu :ccool:
Etrange en effet :weird:
:applo::ccool:
A+