Précédent   Forum des professionnels en informatique > Bases de données > Oracle > SQL
SQL Forum d'entraide sur le SQL pour Oracle
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 15/03/2011, 23h34   #1
Invité de passage
 
Inscription : avril 2007
Messages : 11
Détails du profil
Informations forums :
Inscription : avril 2007
Messages : 11
Points : 0
Points : 0
Par défaut Commande SQL erreur

Bonjour,
Dans un projet j'ai une base hsql. La personne qui a dev la base a joint un fichier SQL avec les tables.

Je suis entrain de tester le projet sur une base ORACLE

et je exécute les commandes suivantes dans sql developer, j'ai des erreurs.
Quelqu'un peut il m'éclairer sur le sujet

Commandes :
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
CREATE TABLE ML_SERVICE_INSTANCE ( 
	ML_TECH_ID  VARCHAR(20) NOT NULL PRIMARY KEY,
	ML_FUNC_ID VARCHAR(50),
	ML_PARENT_ID  VARCHAR(20),
	ML_SERVICE_CODE VARCHAR(50),
	ML_SENDER_CODE VARCHAR(50),
	ML_RECEIVER_CODE VARCHAR(50),
	ML_DOMAIN VARCHAR(50),
	ML_ATTR1 VARCHAR(50),
	ML_ATTR2 VARCHAR(50),
	ML_ATTR3 VARCHAR(50),
	ML_ATTR4 VARCHAR(50),
	ML_TYPE_CODE VARCHAR(10),
	ML_FILENAME  VARCHAR(50),
	ML_CONTENT VARCHAR(200),
	ML_CREA_DATE TIMESTAMP);
 
CREATE  TABLE  ASS_MON_EXCEPTION(
	ASS_SERVICE_CODE  VARCHAR(10),
	ASS_SENDER_CODE  VARCHAR(10),
	ASS_RECEIVER_CODE VARCHAR(10) );
 
CREATE TABLE ML_SERVICE_STATUS ( 
	MLSS_SERV_INST_ID	VARCHAR(20),
	MLSS_STATUS_CODE	INTEGER,
	MLSS_ERROR_CODE  VARCHAR(20),
	MLSS_MSG_TXT VARCHAR(200),
	MLSS_CREA_DATE TIMESTAMP);
Jusqu'à la ça va :
mais après j'ai cette view :

Code :
1
2
3
4
CREATE VIEW ML_SERVICE_LAST_STATUS AS 
	SELECT x.MLSS_SERV_INST_ID, MLSS_STATUS_CODE, MLSS_CREA_DATE, MLSS_MSG_TXT, MLSS_ERROR_CODE 
	FROM ( SELECT MLSS_SERV_INST_ID, MAX(MLSS_CREA_DATE) AS MDATE FROM ML_SERVICE_STATUS GROUP BY MLSS_SERV_INST_ID) AS x 
	INNER JOIN ML_SERVICE_STATUS AS s ON s.MLSS_SERV_INST_ID=x.MLSS_SERV_INST_ID AND s.MLSS_CREA_DATE=x.MDATE

ERREUR :

Code :
1
2
3
4
5
6
7
8
9
10
Erreur commençant à la ligne 1 de la commande :
CREATE VIEW ML_SERVICE_LAST_STATUS AS 
    SELECT MLSS_SERV_INST_ID, MLSS_STATUS_CODE, MLSS_CREA_DATE, MLSS_MSG_TXT, MLSS_ERROR_CODE 
    FROM ( SELECT MLSS_SERV_INST_ID, MAX(MLSS_CREA_DATE) AS MDATE FROM ML_SERVICE_STATUS GROUP BY MLSS_SERV_INST_ID) AS x INNER JOIN ML_SERVICE_STATUS AS s ON s.MLSS_SERV_INST_ID=x.MLSS_SERV_INST_ID AND s.MLSS_CREA_DATE=x.MDATE
Erreur à la ligne de commande : 3, colonne : 117
Rapport d'erreur :
Erreur SQL : ORA-00933: la commande SQL ne se termine pas correctement
00933. 00000 -  "SQL command not properly ended"
*Cause:    
*Action:


Si quelqu'un a des idées.
Dans HSQL ça marche niquel ....
Vitorlundberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 16/03/2011, 00h00   #2
Membre Expert
 
Inscription : août 2008
Messages : 1 271
Détails du profil
Informations forums :
Inscription : août 2008
Messages : 1 271
Points : 1 929
Points : 1 929
D'abord sur oracle c'est plutôt VARCHAR2 et pas VARCHAR, même si VARCHAR a l'air d'avoir fonctionné.
Ensuite, je crois qu'oracle n'aime pas l'utilisation de AS pour spécifier les alias de tables/sous-requêtes, donc peut être tester :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
CREATE VIEW ML_SERVICE_LAST_STATUS AS 
SELECT x.MLSS_SERV_INST_ID, 
       MLSS_STATUS_CODE, 
       MLSS_CREA_DATE, 
       MLSS_MSG_TXT, 
       MLSS_ERROR_CODE 
  FROM ( SELECT MLSS_SERV_INST_ID, 
                MAX(MLSS_CREA_DATE) AS MDATE 
           FROM ML_SERVICE_STATUS 
          GROUP BY MLSS_SERV_INST_ID
       ) x 
  JOIN ML_SERVICE_STATUS s 
    ON s.MLSS_SERV_INST_ID=x.MLSS_SERV_INST_ID 
   AND s.MLSS_CREA_DATE=x.MDATE
skuatamad est déconnecté   Envoyer un message privé Réponse avec citation 10
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h54.


 
 
 
 
Partenaires

Hébergement Web