#1136 - Column count doesn"t match value count at row 1

#1136 - Column count doesn"t match value count at row 1

am 03.08.2007 23:08:19 von Ron Eggler

Hallo,

Ich versuche folgende query in meiner mysql db auszufuehren aber
komischerweise kriegf ich:"#1136 - Column count doesn't match value count
at row 1" Ich weiss nicht warum, es sind doch 16 Zeilen in der Tabelle.
Koennte mirjemand weiterhelfen? Ich bin am verzweifeln.
herzlichen Dank! :)

Ron
[php]
$query = "CREATE TABLE IF NOT EXISTS leads (rep_num SMALLINT NOT
NULL,
order_num INT NOT
NULL,
first_name char(50)
NOT NULL,
last_name char(50)
NOT NULL,
email char(50) NOT
NULL,
phone char(20) NOT
NULL,
alt_phone char(20)
NOT NULL,
timeframe
varchar(16) NOT NULL,
comment
varchar(500),
new_business
varchar(20) NOT NULL,
liquidity
varchar(20) NOT NULL,
funds varchar(9) NOT
NULL,
home varchar(4) NOT
NULL,
income varchar(20)
NOT NULL,
excited TINYINT NOT
NULL,
callback varchar(3),
score SMALLINT NOT
NULL)";
mysql_query($query);
$query = "INSERT INTO leads VALUES ( '$rep_num',
'$order_num',
'$first_name',
'$last_name',
'$email',
'$phone',
'$alt_phone',
'$timeframe',
'$comment',
'$new_business',
'$liquidity',
'$funds',
'$home',
'$income',
'$excied',
'$callback',
'$score')";

[/php]
--
roN

Re: #1136 - Column count doesn"t match value count at row 1

am 04.08.2007 08:39:29 von Andreas Scherbaum

Hallo,

Ron Eggler wrote:
>
> Ich versuche folgende query in meiner mysql db auszufuehren aber
> komischerweise kriegf ich:"#1136 - Column count doesn't match value count
> at row 1" Ich weiss nicht warum, es sind doch 16 Zeilen in der Tabelle.
> Koennte mirjemand weiterhelfen? Ich bin am verzweifeln.
> herzlichen Dank! :)

Ich zähle in deinem CREATE TABLE Statement 17 Spalten (nicht Zeilen) in der
Tabelle. Abgesehen davon schreibt man den INSERT Query folgendermassen:

INSERT INTO ... (rep_num, order_num, ...) VALUES (..., ..., ...);

Wenn du dann dafür sorgst, das alle Spaltennamen angegeben sind, passiert
dir auch kein unglück.


Bonusaufgaben:

- dein mysql_query() enthält keine Fehlerprüfung
- du quotest deine Werte nicht, die in den Query geschrieben werden
- finde die passende Newsgroup für PHP Fragen


Bye

--
Andreas 'ads' Scherbaum
Failure is not an option. It comes bundled with your Microsoft product.
(Ferenc Mantfeld)

Re: #1136 - Column count doesn"t match value count at row 1

am 04.08.2007 11:10:45 von Claus Reibenstein

Ron Eggler schrieb:

> Ich versuche folgende query in meiner mysql db auszufuehren aber
> komischerweise kriegf ich:"#1136 - Column count doesn't match value count
> at row 1" Ich weiss nicht warum, es sind doch 16 Zeilen in der Tabelle.

Zeilen (rows) sind nicht Spalten (Columns). Und wenn MySQL sagt, die
Anzahl der Spalten stimmt nicht, dann stimmt sie auch nicht.

> $query = "CREATE TABLE IF NOT EXISTS leads (rep_num SMALLINT NOT
> NULL,

Statt diesem unglücklich formatierten PHP-Code wäre es besser, die
_echte_ Query zu schildern, die an den Server geht.

> $query = "INSERT INTO leads VALUES ( '$rep_num',

Besonders hier wäre das tatsächliche SQL-Statement interessant.

Gruß. Claus