[SQL] Default Values
Can anyone see why this isn't working?
I created the table as such: Code:
create table members Now, that part works, at least it creates the table, however, if my understanding is right (and apparently it's not) I should be able to do Code:
insert into members values (1, 'firstname', 'lastname', 'address', '12345') Unfortunately, I keep getting "Insert Error: Column name or number of supplied values does not match table definition." Can anyone help? |
The problem with this is that you supply 5 values for 6 columns.
Apparently the SQL server cannot determine which value you're missing.** Try using this statement: Code:
insert into members set member_id=1, fname='firstname', lname='lastname', address='address', phone='12345' **Think of it this way: if there are 2 columns with a default setting, how would the server know which value you didn't specify? Only for the case where colums-with-default-values equals the number-of-missing-values is there a 'correct' way to parse the statement. HTH |
When you don't supply a field list in your INSERT statment, you have to have the right number of fields in your VALUES list. You might think that SQL would just line them up one-for-one and NULL (or default) any fields at the end, but not so.
Try this: Code:
INSERT INTO members (id, fname, lname, address, phone) VALUES (1, 'firstname','lastname','address','12345'); |
Thanks guys, I'll give it a go (as I'm typing this)
... Cool, it worked. It makes sense now, too. Thanks again. |
All times are GMT -8. The time now is 02:35 PM. |
Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2024, vBulletin Solutions, Inc.
Search Engine Optimization by vBSEO 3.6.0 PL2
© 2002-2012 Tilted Forum Project