Results 1 to 13 of 13

Thread: Syntax error in INSERT statement?

  1. #1

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58

    Resolved Syntax error in INSERT statement?

    Whats wrong with the following statement because i am getting Run-time error saying "Syntax error in INSERT statement"

    VB Code:
    1. cn.Execute "Insert Into News (sno,subject,topic,user,date) values (" & count & ",'" & Trim(txtSubject.Text) & "','" & Trim(txtMessage.Text) & "','" & frmLogin.gstrUsername & "','" & strDate & "' )"
    Last edited by gopikrish; Oct 30th, 2004 at 02:31 PM.

  2. #2
    Fanatic Member Graff's Avatar
    Join Date
    Jan 2002
    Location
    Calgary
    Posts
    668
    Depends. If your date field is a datetime type then you don't need the quotes around it. A little more info would be useful (ie. what are the values of the variable you are trying to enter).
    If wishes were fishes we'd all cast nets.

  3. #3

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58
    VB Code:
    1. Dim count As Integer
    2. Dim strDate As String
    3. strDate = Day(Date) & "/" & Month(Date) & "/" & Year(Date)
    4. sql = "select * from News"
    5. count = 1
    6. Set rs = New ADODB.Recordset
    7. rs.Open sql, cn, adOpenDynamic, adLockOptimistic
    8. Do While Not rs.EOF
    9. count = count + 1
    10. rs.MoveNext
    11. Loop
    12. cn.Execute "Insert Into News (sno,subject,topic,user,date) values (" & count & ",'" & Trim(txtSubject.Text) & "','" & Trim(txtMessage.Text) & "','" & frmLogin.gstrUsername & "','" & strDate & "' )"
    13. rs.Close

    Everything looks perfect and I dont know why that error is occuring

  4. #4
    Fanatic Member Graff's Avatar
    Join Date
    Jan 2002
    Location
    Calgary
    Posts
    668
    Can you post the structure of your News Table
    If wishes were fishes we'd all cast nets.

  5. #5

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58
    VB Code:
    1. Field Name            Data Type
    2. --------------        -----------------
    3. ID                    AutoNumber
    4.  
    5. sno                   Number
    6.  
    7. subject               Text
    8.  
    9. topic                 Text
    10.  
    11. user                  Text
    12.  
    13. date                  Text

  6. #6
    PowerPoster
    Join Date
    Nov 2002
    Location
    Manila
    Posts
    7,629
    Date is usually a reserved word.

    Is this an access database? Then try [Date] or rename the field

  7. #7

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58
    Amazing!!! I renamed it and still it says error. Actually that is not a problem because in another form I used "date" as a column name and there was no problem. Yes it is MS Access database.

  8. #8
    Fanatic Member Graff's Avatar
    Join Date
    Jan 2002
    Location
    Calgary
    Posts
    668
    You don't have a ' in any of your (subject,topic,user) variable values do you?
    If wishes were fishes we'd all cast nets.

  9. #9

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58
    There is no ' (apostrophe)
    Please help me, I am stuck with this and unless this is resolved I cant go with further coding

  10. #10
    Fanatic Member Graff's Avatar
    Join Date
    Jan 2002
    Location
    Calgary
    Posts
    668
    I'm grasping straws now but try removing the space between news and the ( and the same with values.
    If wishes were fishes we'd all cast nets.

  11. #11
    MS SQL Powerposter szlamany's Avatar
    Join Date
    Mar 2004
    Location
    Connecticut
    Posts
    18,263
    Just a suggestion - build a complete string - with the INSERT statement...

    .EXECUTE this string.

    If this was MS SQL 2000, I would take a misbehaving INSERT and DEBUG.PRINT the STRING and cut/paste the INSERT from the IMMEDIATE window into QUERY ANALYZER - a tool for executing SQL queries on-line. Not sure if ACCESS has a tool like that - but maybe seeing the INSERT string as one piece might help you out...

  12. #12

    Thread Starter
    Member
    Join Date
    Oct 2004
    Posts
    58
    Hey I removed (sno,subject,topic,user,date) from
    Insert Into News(sno,subject,topic,user,date) values .........

    And now there is no error. Strange why that caused an error but thanks to god

  13. #13
    MS SQL Powerposter szlamany's Avatar
    Join Date
    Mar 2004
    Location
    Connecticut
    Posts
    18,263
    It is probably because there are several reserved keywords in that list of fieldname that are not permitted...

    If you change it to:

    Code:
    Insert Into News([[sno],[subject],[topic],[user],[date]) values
    it would probably work - wrapping reserved keywords in [] brackets gets past the problem.

    But you really should not use reserved keywords - they will burn you eventually.

    Here is a list of reserved keywords from an old mainframe BASIC program we have:

    Code:
    200	DATA ABSOLUTE,ACTION,ADA,ADD,ADMIN,AFTER,AGGREGATE,ALIAS,ALL,ALLOCATE &
    	,ALTER,AND,ANY,ARE,ARRAY,AS,ASC,ASSERTION,AT,AUTHORIZATION,AVG	&
    	,BACKUP,BEFORE,BEGIN,BETWEEN,BINARY,BIT,BIT_LENGTH,BLOB,BOOLEAN	&
    	,BOTH,BREADTH,BREAK,BROWSE,BULK,BY,CALL,CASCADE,CASCADED,CASE	&
    	,CAST,CATALOG,CHAR,CHARACTER,CHARACTER_LENGTH,CHAR_LENGTH,CHECK	&
    	,CHECKPOINT,CLASS,CLOB,CLOSE,CLUSTERED,COALESCE,COLLATE,COLLATION &
    	,COLUMN,COMMIT,COMPLETION,COMPUTE,CONNECT,CONNECTION,CONSTRAINT	&
    	,CONSTRAINTS,CONSTRUCTOR,CONTAINS,CONTAINSTABLE,CONTINUE,CONVERT &
    	,CORRESPONDING,COUNT,CREATE,CROSS,CUBE,CURRENT,CURRENT_DATE,CURRENT_PATH &
    	,CURRENT_ROLE,CURRENT_TIME,CURRENT_TIMESTAMP,CURRENT_USER,CURSOR &
    	,CYCLE,DATA,DATABASE,DATE,DAY,DBCC,DEALLOCATE,DEC,DECIMAL,DECLARE &
    	,DEFAULT,DEFERRABLE,DEFERRED,DELETE,DENY,DEPTH,DEREF,DESC,DESCRIBE &
    	,DESCRIPTOR,DESTROY,DESTRUCTOR,DETERMINISTIC,DIAGNOSTICS,DICTIONARY &
    	,DISCONNECT,DISK,DISTINCT,DISTRIBUTED,DOMAIN,DOUBLE,DROP,DUMMY,DUMP &
    	,DYNAMIC,EACH,ELSE,END,END-EXEC,EQUALS,ERRLVL,ESCAPE,EVERY,EXCEPT &
    	,EXCEPTION,EXEC,EXECUTE,EXISTS,EXIT,EXTERNAL,EXTRACT,FALSE,FETCH &
    	,FILE,FILLFACTOR,FIRST,FLOAT,FOR,FOREIGN,FORTRAN,FOUND,FREE,FREETEXT &
    	,FREETEXTTABLE,FROM,FULL,FUNCTION,GENERAL,GET,GLOBAL,GO,GOTO,GRANT &
    	,GROUP,GROUPING,HAVING,HOLDLOCK,HOST,HOUR,IDENTITY,IDENTITYCOL	&
    	,IDENTITY_INSERT,IF,IGNORE,IMMEDIATE,IN,INCLUDE,INDEX,INDICATOR	&
    	,INITIALIZE,INITIALLY,INNER,INOUT,INPUT,INSENSITIVE,INSERT,INT	&
    	,INTEGER,INTERSECT,INTERVAL,INTO,IS,ISOLATION,ITERATE,JOIN,KEY	&
    	,KILL,LANGUAGE,LARGE,LAST,LATERAL,LEADING,LEFT,LESS,LEVEL,LIKE	&
    	,LIMIT,LINENO,LOAD,LOCAL,LOCALTIME,LOCALTIMESTAMP,LOCATOR,LOWER	&
    	,MAP,MATCH,MAX,MIN,MINUTE,MODIFIES,MODIFY,MODULE,MONTH,NAMES,NATIONAL &
    	,NATURAL,NCHAR,NCLOB,NEW,NEXT,NO,NOCHECK,NONCLUSTERED,NONE,NOT,NULL &
    	,NULLIF,NUMERIC,OBJECT,OCTET_LENGTH,OF,OFF,OFFSETS,OLD,ON,ONLY,OPEN &
    	,OPENDATASOURCE,OPENQUERY,OPENROWSET,OPENXML,OPERATION,OPTION,OR &
    	,ORDER,ORDINALITY,OUT,OUTER,OUTPUT,OVER,OVERLAPS,PAD,PARAMETER	&
    	,PARAMETERS,PARTIAL,PASCAL,PATH,PERCENT,PLAN,POSITION,POSTFIX	&
    	,PRECISION,PREFIX,PREORDER,PREPARE,PRESERVE,PRIMARY,PRINT,PRIOR	&
    	,PRIVILEGES,PROC,PROCEDURE,PUBLIC,RAISERROR,READ,READS,READTEXT	&
    	,REAL,RECONFIGURE,RECURSIVE,REF,REFERENCES,REFERENCING,RELATIVE	&
    	,REPLICATION,RESTORE,RESTRICT,RESULT,RETURN,RETURNS,REVOKE,RIGHT &
    	,ROLE,ROLLBACK,ROLLUP,ROUTINE,ROW,ROWCOUNT,ROWGUIDCOL,ROWS,RULE	&
    	,SAVE,SAVEPOINT,SCHEMA,SCOPE,SCROLL,SEARCH,SECOND,SECTION,SELECT &
    	,SEQUENCE,SESSION,SESSION_USER,SET,SETS,SETUSER,SHUTDOWN,SIZE 	&
    	,SMALLINT,SOME,SPACE,SPECIFIC,SPECIFICTYPE,SQL,SQLCA,SQLCODE	&
    	,SQLERROR,SQLEXCEPTION,SQLSTATE,SQLWARNING,START,STATE,STATEMENT &
    	,STATIC,STATISTICS,STRUCTURE,SUBSTRING,SUM,SYSTEM_USER,TABLE	&
    	,TEMPORARY,TERMINATE,TEXTSIZE,THAN,THEN,TIME,TIMESTAMP,TIMEZONE_HOUR &
    	,TIMEZONE_MINUTE,TO,TOP,TRAILING,TRAN,TRANSACTION,TRANSLATE	&
    	,TRANSLATION,TREAT,TRIGGER,TRIM,TRUE,TRUNCATE,TSEQUAL,UNDER	&
    	,UNION,UNIQUE,UNKNOWN,UNNEST,UPDATE,UPDATETEXT,UPPER,USAGE	&
    	,USE,USER,USING,VALUE,VALUES,VARCHAR,VARIABLE,VARYING,VIEW	&
    	,WAITFOR,WHEN,WHENEVER,WHERE,WHILE,WITH,WITHOUT,WORK,WRITE	&
    	,WRITETEXT,YEAR,ZONE

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  



Click Here to Expand Forum to Full Width