problème insert into...... [ASP/SQL] - ASP - Programmation
Marsh Posté le 07-08-2003 à 08:51:41
si tes champs sont de types numérique, enlève les "'" dans ton insert.
le problème vient peut-etre des dates, mais essaye déjà ca.
Marsh Posté le 07-08-2003 à 10:48:37
Seul "article" est numérique, j'ai donc enlevé les "'", mais cela est toujours pareils.... j'ai essayé de remplacer la variable date_now par autre chose, tjs pareil encore...
Ca peut etre koi le problème de date?
Marsh Posté le 07-08-2003 à 11:06:06
essaye un response.write de sql_note pour voir
Marsh Posté le 07-08-2003 à 11:07:27
gothico a écrit : Seul "article" est numérique, j'ai donc enlevé les "'", mais cela est toujours pareils.... j'ai essayé de remplacer la variable date_now par autre chose, tjs pareil encore... |
Vérifit si il n'y a pas de ' dans l'un des champs, genre dans "nom".
Pour la date, ta variable date_nom est de quel type ? Si c'est de type string, il faut sans doute faire une conversion en type date. Quel est ton SGBD ? Quel est le type du champ "date" ?
Marsh Posté le 07-08-2003 à 11:23:24
tomlameche a écrit : |
C'est du Access, mon champ date est de type date/heure...
J'ai vérifié, il n'y a pas de ' dans mes champs....
Marsh Posté le 07-08-2003 à 11:25:17
gothico a écrit : |
Et date_now, c'est quoi comme type ?
Marsh Posté le 07-08-2003 à 11:33:08
Urd-sama a écrit : essaye un response.write de sql_note pour voir |
Ca donne ca :
INSERT INTO notes (code_article,date,auteur_note,note) VALUES (1,'07/08/2003 11:35:16','asp','asp') |
Marsh Posté le 07-08-2003 à 11:35:05
essaye de mettre la date comme ceci peut-etre:
'07.08.2003 11:35:16'
Marsh Posté le 07-08-2003 à 11:45:41
Urd-sama a écrit : essaye de mettre la date comme ceci peut-etre: |
Erreur de syntaxe dans l'instruction INSERT INTO. |
Marsh Posté le 07-08-2003 à 11:54:33
peut-tu nous donner les types des champs dans ta base?
Marsh Posté le 07-08-2003 à 11:56:56
code_article : numérique
date : date/heure
auteur_note : texte
note : mémo
Marsh Posté le 07-08-2003 à 12:00:26
un dernier essai:
'07.08.2003'
que la date et pas les minutes (si c'est access y'a peut-etre un masque)
Marsh Posté le 07-08-2003 à 12:05:50
Avec ca :
|
Ca marche tjs po.....
Marsh Posté le 07-08-2003 à 12:24:04
pourtant, les valeurs sont les bonnes, la requete n'a pas l'air fausse, et mes post passe bien
POST Data: |
Marsh Posté le 07-08-2003 à 12:45:05
J'ai tout essayé (enfin presque), ya qu'une seule requete qui marche, c'est quand je réduit à ca :
sql_note = "INSERT INTO notes(auteur_note) VALUES ('"& nom &"')" |
Mais la je ne suis pas plus avancé.....
Marsh Posté le 07-08-2003 à 13:57:01
Dernière nouvelle, ca aussi ca marche :
sql_note = "INSERT INTO notes(code_article) VALUES ("& article &" )" |
et ca :
sql_note = "INSERT INTO notes(code_article,auteur_note) VALUES ("& article &",'"& nom &"')" |
Après, des que j'ajoute la date et/ou la note, ca marche plus....
Qu'est ce que je fais? Je le lance par la fenetre?
Marsh Posté le 07-08-2003 à 14:29:00
Arf, j'ai trouvé!!!!!!!!!!
Enfin.... en fait ca venais des noms!! date et note ne doivent pas etre autoriser à l'utilisation sous access, alors j'ai changé les noms et ca marche!!!! Il pourrais me le dire quand meme ce logiciel à 2 balle
Ouf
Merci à vous
Marsh Posté le 11-08-2003 à 19:41:51
Le logiciel à deux balles est fourni avec un éditeur SQL pour tester tes requêtes, et une documentation qui fait exactement 34,5 Mo de fichiers chm compressés, ce qui représente pas moins de 100 000 pages.
Développeur à deux balles...
Marsh Posté le 11-08-2003 à 19:46:24
Pour ce qui est de la liste des mot réservées, c'est ça :
Transact-SQL Reference
Reserved Keywords
Microsoft® SQL Server? 2000 uses reserved keywords for defining, manipulating, and accessing databases. Reserved keywords are part of the grammar of the Transact-SQL language used by SQL Server to parse and understand Transact-SQL statements and batches. Although it is syntactically possible to use SQL Server reserved keywords as identifiers and object names in Transact-SQL scripts, this can be done only using delimited identifiers.
The following table lists SQL Server reserved keywords.
ADD EXCEPT PERCENT
ALL EXEC PLAN
ALTER EXECUTE PRECISION
AND EXISTS PRIMARY
ANY EXIT PRINT
AS FETCH PROC
ASC FILE PROCEDURE
AUTHORIZATION FILLFACTOR PUBLIC
BACKUP FOR RAISERROR
BEGIN FOREIGN READ
BETWEEN FREETEXT READTEXT
BREAK FREETEXTTABLE RECONFIGURE
BROWSE FROM REFERENCES
BULK FULL REPLICATION
BY FUNCTION RESTORE
CASCADE GOTO RESTRICT
CASE GRANT RETURN
CHECK GROUP REVOKE
CHECKPOINT HAVING RIGHT
CLOSE HOLDLOCK ROLLBACK
CLUSTERED IDENTITY ROWCOUNT
COALESCE IDENTITY_INSERT ROWGUIDCOL
COLLATE IDENTITYCOL RULE
COLUMN IF SAVE
COMMIT IN SCHEMA
COMPUTE INDEX SELECT
CONSTRAINT INNER SESSION_USER
CONTAINS INSERT SET
CONTAINSTABLE INTERSECT SETUSER
CONTINUE INTO SHUTDOWN
CONVERT IS SOME
CREATE JOIN STATISTICS
CROSS KEY SYSTEM_USER
CURRENT KILL TABLE
CURRENT_DATE LEFT TEXTSIZE
CURRENT_TIME LIKE THEN
CURRENT_TIMESTAMP LINENO TO
CURRENT_USER LOAD TOP
CURSOR NATIONAL TRAN
DATABASE NOCHECK TRANSACTION
DBCC NONCLUSTERED TRIGGER
DEALLOCATE NOT TRUNCATE
DECLARE NULL TSEQUAL
DEFAULT NULLIF UNION
DELETE OF UNIQUE
DENY OFF UPDATE
DESC OFFSETS UPDATETEXT
DISK ON USE
DISTINCT OPEN USER
DISTRIBUTED OPENDATASOURCE VALUES
DOUBLE OPENQUERY VARYING
DROP OPENROWSET VIEW
DUMMY OPENXML WAITFOR
DUMP OPTION WHEN
ELSE OR WHERE
END ORDER WHILE
ERRLVL OUTER WITH
ESCAPE OVER WRITETEXT
In addition, the SQL-92 standard defines a list of reserved keywords. Avoid using SQL-92 reserved keywords for object names and identifiers. The ODBC reserved keyword list (shown below) is the same as the SQL-92 reserved keyword list.
Note The SQL-92 reserved keywords list sometimes can be more restrictive than SQL Server and at other times less restrictive. For example, the SQL-92 reserved keywords list contains INT, which SQL Server does not need to distinguish as a reserved keyword.
Transact-SQL reserved keywords can be used as identifiers or names of databases or database objects, such as tables, columns, views, and so on. Use either quoted identifiers or delimited identifiers. The use of reserved keywords as the names of variables and stored procedure parameters is not restricted. For more information, see Using Identifiers.
ODBC Reserved Keywords
The following words are reserved for use in ODBC function calls. These words do not constrain the minimum SQL grammar; however, to ensure compatibility with drivers that support the core SQL grammar, applications should avoid using these keywords.
This is the current list of ODBC reserved keywords. For more information, see Microsoft ODBC 3.0 Programmer's Reference, Volume 2, Appendix C.
ABSOLUTE EXEC OVERLAPS
ACTION EXECUTE PAD
ADA EXISTS PARTIAL
ADD EXTERNAL PASCAL
ALL EXTRACT POSITION
ALLOCATE FALSE PRECISION
ALTER FETCH PREPARE
AND FIRST PRESERVE
ANY FLOAT PRIMARY
ARE FOR PRIOR
AS FOREIGN PRIVILEGES
ASC FORTRAN PROCEDURE
ASSERTION FOUND PUBLIC
AT FROM READ
AUTHORIZATION FULL REAL
AVG GET REFERENCES
BEGIN GLOBAL RELATIVE
BETWEEN GO RESTRICT
BIT GOTO REVOKE
BIT_LENGTH GRANT RIGHT
BOTH GROUP ROLLBACK
BY HAVING ROWS
CASCADE HOUR SCHEMA
CASCADED IDENTITY SCROLL
CASE IMMEDIATE SECOND
CAST IN SECTION
CATALOG INCLUDE SELECT
CHAR INDEX SESSION
CHAR_LENGTH INDICATOR SESSION_USER
CHARACTER INITIALLY SET
CHARACTER_LENGTH INNER SIZE
CHECK INPUT SMALLINT
CLOSE INSENSITIVE SOME
COALESCE INSERT SPACE
COLLATE INT SQL
COLLATION INTEGER SQLCA
COLUMN INTERSECT SQLCODE
COMMIT INTERVAL SQLERROR
CONNECT INTO SQLSTATE
CONNECTION IS SQLWARNING
CONSTRAINT ISOLATION SUBSTRING
CONSTRAINTS JOIN SUM
CONTINUE KEY SYSTEM_USER
CONVERT LANGUAGE TABLE
CORRESPONDING LAST TEMPORARY
COUNT LEADING THEN
CREATE LEFT TIME
CROSS LEVEL TIMESTAMP
CURRENT LIKE TIMEZONE_HOUR
CURRENT_DATE LOCAL TIMEZONE_MINUTE
CURRENT_TIME LOWER TO
CURRENT_TIMESTAMP MATCH TRAILING
CURRENT_USER MAX TRANSACTION
CURSOR MIN TRANSLATE
DATE MINUTE TRANSLATION
DAY MODULE TRIM
DEALLOCATE MONTH TRUE
DEC NAMES UNION
DECIMAL NATIONAL UNIQUE
DECLARE NATURAL UNKNOWN
DEFAULT NCHAR UPDATE
DEFERRABLE NEXT UPPER
DEFERRED NO USAGE
DELETE NONE USER
DESC NOT USING
DESCRIBE NULL VALUE
DESCRIPTOR NULLIF VALUES
DIAGNOSTICS NUMERIC VARCHAR
DISCONNECT OCTET_LENGTH VARYING
DISTINCT OF VIEW
DOMAIN ON WHEN
DOUBLE ONLY WHENEVER
DROP OPEN WHERE
ELSE OPTION WITH
END OR WORK
END-EXEC ORDER WRITE
ESCAPE OUTER YEAR
EXCEPT OUTPUT ZONE
EXCEPTION
Future Keywords
The following keywords could be reserved in future releases of SQL Server as new features are implemented. Consider avoiding the use of these words as identifiers.
ABSOLUTE FOUND PRESERVE
ACTION FREE PRIOR
ADMIN GENERAL PRIVILEGES
AFTER GET READS
AGGREGATE GLOBAL REAL
ALIAS GO RECURSIVE
ALLOCATE GROUPING REF
ARE HOST REFERENCING
ARRAY HOUR RELATIVE
ASSERTION IGNORE RESULT
AT IMMEDIATE RETURNS
BEFORE INDICATOR ROLE
BINARY INITIALIZE ROLLUP
BIT INITIALLY ROUTINE
BLOB INOUT ROW
BOOLEAN INPUT ROWS
BOTH INT SAVEPOINT
BREADTH INTEGER SCROLL
CALL INTERVAL SCOPE
CASCADED ISOLATION SEARCH
CAST ITERATE SECOND
CATALOG LANGUAGE SECTION
CHAR LARGE SEQUENCE
CHARACTER LAST SESSION
CLASS LATERAL SETS
CLOB LEADING SIZE
COLLATION LESS SMALLINT
COMPLETION LEVEL SPACE
CONNECT LIMIT SPECIFIC
CONNECTION LOCAL SPECIFICTYPE
CONSTRAINTS LOCALTIME SQL
CONSTRUCTOR LOCALTIMESTAMP SQLEXCEPTION
CORRESPONDING LOCATOR SQLSTATE
CUBE MAP SQLWARNING
CURRENT_PATH MATCH START
CURRENT_ROLE MINUTE STATE
CYCLE MODIFIES STATEMENT
DATA MODIFY STATIC
DATE MODULE STRUCTURE
DAY MONTH TEMPORARY
DEC NAMES TERMINATE
DECIMAL NATURAL THAN
DEFERRABLE NCHAR TIME
DEFERRED NCLOB TIMESTAMP
DEPTH NEW TIMEZONE_HOUR
DEREF NEXT TIMEZONE_MINUTE
DESCRIBE NO TRAILING
DESCRIPTOR NONE TRANSLATION
DESTROY NUMERIC TREAT
DESTRUCTOR OBJECT TRUE
DETERMINISTIC OLD UNDER
DICTIONARY ONLY UNKNOWN
DIAGNOSTICS OPERATION UNNEST
DISCONNECT ORDINALITY USAGE
DOMAIN OUT USING
DYNAMIC OUTPUT VALUE
EACH PAD VARCHAR
END-EXEC PARAMETER VARIABLE
EQUALS PARAMETERS WHENEVER
EVERY PARTIAL WITHOUT
EXCEPTION PATH WORK
EXTERNAL POSTFIX WRITE
FALSE PREFIX YEAR
FIRST PREORDER ZONE
FLOAT PREPARE
See Also
SET QUOTED_IDENTIFIER
Using Reserved Keywords
©1988-2000 Microsoft Corporation. All Rights Reserved.
Marsh Posté le 11-08-2003 à 19:48:21
Pour info, en plus "date" c'est pas SQL Server qui te jette, mais le pilote ODBC, car il est SQL-92 compliant, et refuse donc l'utilise de ce mot clé. SQL Serveur peut très bien l'utiliser, puisque le seul "date" qu'il connait est une fonction, qui s'utilise donc avec des parenthèses.
PS: et je tiens à attirer l'attention sur la dernière section de l'article, que je trouve fort louable.
Marsh Posté le 07-08-2003 à 00:18:39
Salut,
ma requète n'est pourtant pas compliquée, mais je vois pas l'erreur...
sql_note = "INSERT INTO notes (code_article, date, auteur_note, note) VALUES ('"& article &"', '"& date_now &"', '"& nom &"', '"& note &"')"
Erreur
Erreur de syntaxe dans l'instruction INSERT INTO.
Merci.
Message édité par gothico le 07-08-2003 à 00:19:49