On Sat, 2004-03-20 at 01:03, Chris Knipe wrote: > Lo everyone, > > I'm *baffled* completely.... I've never seen something like this before..... > :(((( I tried this exact query from PHP, Perl, as well as the MySQL > thingy... They ALL give the same result - it must therefore be my table.... > ... > mysql> INSERT INTO Accounts (Username, Password) VALUES > (Username='[EMAIL PROTECTED]', Password='password'); > Query OK, 1 row affected (0.00 sec) > > mysql> SELECT * FROM Accounts WHERE Username='[EMAIL PROTECTED]'; > Empty set (0.00 sec) > > mysql> > > HOWEVER.... > > mysql> SELECT * FROM Accounts WHERE Username='0'; > +---------+----------+----------+----------+----------+ > | EntryID | Username | Password | isActive | isCapped | > +---------+----------+----------+----------+----------+ > | 48 | 0 | 0 | y | n | > +---------+----------+----------+----------+----------+ > 1 row in set (0.00 sec) > > There's my entry. It's the row that was inserted, because I can see from > the EntryID (Auto Increment). > > Now, WTF is wrong here... Nevermind what the value is I send to Username / > Password, Mysql *ALWAYS* replaces the data specified with a 0. Needless to > say, due to the UNIQUE keys, I dont ever get the data into my table.... :(((
You are using the wrong syntax for what you want to do. What you want is this: insert into table (username, password) values ('username', 'password') Skip out the "username=" and "password=" part. What you are ending up doing here is that the values portion of the insert statement, these two parts: Username='[EMAIL PROTECTED]' Password='password' Are being evaluated as comparison expressions. Since the string 'password' does not equal the value of the column Password (although this seems like an odd syntax to allow without a where clause), the value of these two columns is zero. Simplified, your query ends up being (after the expressions are evaluated): insert into table (username, password) values (0, 0) because both of the expressions you put in the values evaluate to 0. I hope this is clear enough. -- Andy Bakun <[EMAIL PROTECTED]> -- MySQL General Mailing List For list archives: http://lists.mysql.com/mysql To unsubscribe: http://lists.mysql.com/[EMAIL PROTECTED]