Search code examples
mysqlsqlmysql-error-1064

Error #1064 in mySQL Query


I get the following error in the query below:

 #1064 - You have an error in your SQL syntax; check the manual that corresponds 
 to your MySQL server version for the right syntax to use near ')))' at line 1

Code Snippet:

INSERT INTO test_bans( ip, Expiration )
    VALUES (
    "0.0.0.0", DateAdd(
    "d", 1, Date( )
    )

) 

Table creation query

CREATE TABLE test_bans (
            ID smallint(6) NOT NULL AUTO_INCREMENT,
            IP text NOT NULL,
            Expiration DATETIME NOT NULL,
            PRIMARY KEY (ID)
            ) TYPE=MyISAM; 

What am I missing?

Edit, after running this query I got this error. I guess my ew question is how do I add a day to my current timestamp?

#1305 - FUNCTION optimuscprime.DateAdd does not exist 

Query:

 INSERT INTO test_bans( ip, Expiration )
VALUES (
"0.0.0.0", DateAdd(
"d", 1,
CURRENT_TIMESTAMP
)
) 

Solution

  • Try to use simple SQL, not the MySQL-dialect:

    INSERT INTO test_bans( ip, Expiration )
        VALUES (
        '0.0.0.0', (NOW() + INTERVAL 1 DAY)
    );