Je viens d'acquérir ce livre Synthex SQL 4e mais le script ci-dessous me renvoie des erreurs. Je ne sais pas vraiment à partir de quel SGBDR il a été fait (Oracle il me semble) il a été créé.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
-- création de la base 
CREATE DATABASE B_FORUM ; 
 
-- création du schéma dans la base de données 
CREATE SCHEMA S_NEWS ; 
 
-- table : T_UTILISATEUR_USR 
CREATE TABLE S_NEWS.T_UTILISATEUR_USR 
( USR_ID INTEGER NOT NULL PRIMARY KEY, 
 USR_MAIL VARCHAR(256) NOT NULL, 
 USR_TITRE CHAR(6) NULL DEFAULT ‘M.’ 
 CHECK (USR_TITRE IN (‘M.’, ‘Mlle.’, ‘Mme.’)), 
 USR_NOM CHAR(32) NOT NULL, 
 USR_PRENOM VARCHAR(32) NULL, 
 USR_ORGANISATION VARCHAR(128) NULL) 
 
-- table : T_FORUM_FRM 
CREATE TABLE S_NEWS.T_FORUM_FRM 
( FRM_ID INTEGER NOT NULL PRIMARY KEY, 
 FRM_NOM CHAR(64) NOT NULL, 
 FRM_SUJET VARCHAR(256) NULL, 
 FRM_DATE_CREATION TIMESTAMP NOT NULL) 
 
-- table : T_FOURNINET_FAI 
CREATE TABLE S_NEWS.T_FOURNINET_FAI 
( FAI_ID INTEGER NOT NULL PRIMARY KEY, 
 FAI_NOM CHAR(64) NOT NULL) 
 
-- table : T_J_ABONNE_ABN 
CREATE TABLE TJ_ABONNE_ABN 
( USR_ID INTEGER NOT NULL, 
 FAI_ID INTEGER NOT NULL, 
 CONSTRAINT PK_ABN PRIMARY KEY (USR_ID, FAI_ID), 
 CONSTRAINT FK_ABN_FAI FOREIGN KEY (FAI_ID) 
 REFERENCES S_NEWS.T_FOURNINET_FAI (FAI_ID), 
 CONSTRAINT FK_ABN_USR FOREIGN KEY (USR_ID) 
 REFERENCES S_NEWS.T_UTILISATEUR_USR (USR_ID)) 
 
-- table : T_J_INSCRIT_ISC 
CREATE TABLE S_NEWS.T_J_INSCRIT_ISC 
( USR_ID INTEGER NOT NULL, 
 FRM_ID INTEGER NOT NULL, 
 ISC_MOMENT TIMESTAMP NOT NULL, 
 CONSTRAINT PK_ISC PRIMARY KEY (USR_ID, FRM_ID), 
 CONSTRAINT FK_ISC_FRM FOREIGN KEY (FRM_ID) 
 REFERENCES S_NEWS.T_FORUM_FRM (FRM_ID), 
 CONSTRAINT FK_ISC_USR FOREIGN KEY (USR_ID) 
 REFERENCES S_NEWS.T_UTILISATEUR_USR (USR_ID)) 
 
-- table : T_SERVEUR_SRV 
CREATE TABLE S_NEWS.T_SERVEUR_SRV 
( SRV_ID INTEGER NOT NULL PRIMARY KEY, 
 FAI_ID INTEGER NOT NULL, 
 SRV_ADR_IP VARCHAR(15) NOT NULL, 
 SRV_NOM VARCHAR(256) NOT NULL, 
 CONSTRAINT FK_SRV_FAI FOREIGN KEY (FAI_ID) 
 REFERENCES S_NEWS.T_FOURNINET_FAI (FAI_ID))
 
 
-- table : T_J_RECENSE_RCS 
CREATE TABLE S_NEWS.T_J_RECENSE_RCS 
( SRV_ID INTEGER NOT NULL, 
 FRM_ID INTEGER NOT NULL, 
 CONSTRAINT PK_RCS PRIMARY KEY (SRV_ID, FRM_ID), 
 CONSTRAINT FK_RCS_FRM FOREIGN KEY (FRM_ID) 
 REFERENCES S_NEWS.T_FORUM_FRM (FRM_ID), 
 CONSTRAINT FK_RCS_SRV FOREIGN KEY (SRV_ID) 
 REFERENCES S_NEWS.T_SERVEUR_SRV (SRV_ID)) 
 
--- table : T_NEWS_NEW 
CREATE TABLE S_NEWS.T_NEWS_NEW 
( NEW_ID INTEGER NOT NULL PRIMARY KEY, 
 NEW_ID_PERE INTEGER NULL, 
 USR_ID INTEGER NOT NULL, 
 FRM_ID INTEGER NOT NULL, 
 NEW_MOMENT TIMESTAMP NOT NULL, 
 NEW_GLOBAL_ID CHAR(36) NOT NULL, 
 NEW_TITRE CHAR(256) NOT NULL, 
 NEW_TEXT CLOB(2 GB) NULL, 
 CONSTRAINT FK_NEW_FRM FOREIGN KEY (FRM_ID) 
 REFERENCES S_NEWS.T_FORUM_FRM (FRM_ID), 
 CONSTRAINT FK_NEW_USR FOREIGN KEY (USR_ID) 
 REFERENCES S_NEWS.T_UTILISATEUR_USR (USR_ID), 
 CONSTRAINT FK_NEW_NEW FOREIGN KEY (NEW_ID_PERE) 
 REFERENCES S_NEWS.T_NEWS_NEW (NEW_ID)) 
 
-- table : T_FICHIER_FIC 
CREATE TABLE S_NEWS.T_FICHIER_FIC 
( FIC_ID INTEGER NOT NUL PRIMARY KEY, 
 NEW_ID INTEGER NOT NULL, 
 FIC_NOM VARCHAR(128) NOT NULL, 
 FIC_TAILLE_O INTEGER NOT NULL, 
 CONSTRAINT FK_FIC_NEW FOREIGN KEY (NEW_ID) 
 REFERENCES S_NEWS.T_NEWS_NEW (NEW_ID))
Je suis sur Postgres 9.3 installé d'aujourd'hui et lié à Easyphp pour utiliser PhpPgAdmin sur le serveur Apache. Je ne connais pas du tout les différences entre Postgres et les autres donc si quelqu'un peut me donner une version pour Postgres. La première erreur que je soupçonne (Au départ, l'erreur était sur la création de la base elle-même puis du schéma que j'ai alors créé moi-même grâce à l'interface de PhpPgAdmin) c'est lors de la création de la première table au niveau de:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
CHECK (USR_TITRE IN (‘M.’, ‘Mlle.’, ‘Mme.’)),
Mais cela peut être autre chose. Si un expert peut me donner la solution..