Rechercher : dans
Par :

Erreur creation procedure sql

bakkus, le 9 jui 2009 à 10:21:02 
 Signaler ce message aux modérateurs

Bonjour,

je viens d'exécuter cette requête dans phpmyadmin :
===========================================================
DELIMITER @@

DROP PROCEDURE IF EXISTS `ARTICLEPLUS_SELECT` @@
CREATE PROCEDURE `ARTICLEPLUS_SELECT` (_AR_REF varchar(18), _AP_TYPE int)
BEGIN
SELECT * FROM F_ARTICLEPLUS WHERE AR_REF = _AR_REF AND AP_TYPE = _AP_TYPE;
END @@
============================================================­­====

il me retourne cette erreur:
========================
Erreur

requête SQL: Documentation

CREATE PROCEDURE `ARTICLEPLUS_SELECT` ( _AR_REF varchar( 18 ) , _AP_TYPE int ) BEGIN SELECT *
FROM F_ARTICLEPLUS
WHERE AR_REF = _AR_REF
AND AP_TYPE = _AP_TYPE;

END @ @

MySQL a répondu:Documentation
#1064 - Erreur de syntaxe près de '@@' à la ligne 4
==========================

Sachant que bien avant j'ai crée la table F_ARTICLEPLUS en exécutant ça :

=================
###
### TABLE F_ARTICLEPLUS
###
DROP TABLE IF EXISTS F_ARTICLEPLUS;
CREATE TABLE `F_ARTICLEPLUS` (
`AP_ID` INT NOT NULL AUTO_INCREMENT ,
`AP_TYPE` INT NOT NULL ,
`AR_REF` VARCHAR(18) NOT NULL ,
`AP_DESCRIPTION` VARCHAR(128) NOT NULL ,
PRIMARY KEY (`AP_ID`)
) ENGINE = InnoDB;
==================

et j'ai crée aussi la procédure ARTICLEPLUS_INSERT sans problème en utilisant ça:
=====================

DELIMITER @@
DROP PROCEDURE IF EXISTS `ARTICLEPLUS_INSERT` @@
CREATE PROCEDURE `ARTICLEPLUS_INSERT` (_AP_TYPE int,
_AR_REF varchar(18),
_AP_DESCRIPTION varchar(128))
BEGIN
INSERT INTO F_ARTICLEPLUS
SET AP_TYPE = _AP_TYPE,
AR_REF = _AR_REF,
AP_DESCRIPTION = _AP_DESCRIPTION;
END @@

=====================

donc ,j'ai que la procédure ARTICLEPLUS_SELECT qui pose pb.

si vous savez d'où vient l'erreur ,merci de prévenir .

Merci

Configuration: Windows XP
Firefox 3.0.11

Meilleures réponses pour « erreur creation procedure sql » dans :
PL/SQL - Introduction au langage PL/SQL VoirIntroduction au langage PL/SQL Le langage PL/SQL est un langage L4G (entendez par ce terme un langage de quatrième génération), fournissant une interface procédurale au SGBD Oracle. Le langage PL/SQL intègre parfaitement le langage SQL en lui...
SQL - Création de table VoirLe SQL, comportant un langage de définition de données (LDD), permet de créer des tables. Pour cela, il utilise le couple de mots clés CREATE TABLE. La création de tables Le création de tables se fait à l'aide du couple de mots-clés CREATE...
SQL - Création de vues VoirQu'est-ce qu'une vue? Une vue est une table virtuelle, c'est-à-dire dont les données ne sont pas stockées dans une table de la base de données, et dans laquelle il est possible de rassembler des informations provenant de plusieurs tables. On parle...