error: 1366 Incorrect integer value:
- Hanza
- Člen | 4
Dobrý den,
přes formulář ukládám data do tabulky:
INSERT INTO article
(article_id
, title
,
url
, description
, content
)
VALUES ('', ‚aaa‘, ‚aaa‘, ‚aaa‘, ‚<p>aaa</p>‘)
chyba:
Nette\Database\DriverException #HY000
SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column
‚article_id‘ at row 1.
Tuším, proč je tam chyba. Netuším, jak ji odstranit.
- Hanza
- Člen | 4
Ano.
article (
article_id
int(11) NOT NULL AUTO_INCREMENT,
…
PRIMARY KEY (article_id
),
UNIQUE KEY url
(url
)
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8 COLLATE=utf8_czech_ci
Mám metodu createComponentEditorForm()se skrytým polem article_id, které se
metoda editorFormSucceeded snaží uložit do tabulky article jako
prázdný text.
- rerege
- Člen | 58
Dovolím se ještě zeptat, co je lepší řešení
- vynechávat tu proměnnou v poli s AI (když je proměnná předaná z formuláře, bylo by pak potřeba pro edit a pro insert mít dvojí kód, nebo?
- nebo poladit my.ini
mám WAMP s PHP 7.0.10 a MySQL 5.7.14
když nastavím sql-mode na none (v konzole) či v my.ini sql-mode="" tak to
funguje
když nechám sql-mode na default (v konzole) či v my.ini ;sql-mode=""
(zakomentován) tak to nefunguje
jinak toto mi nepomohlo sql-mode=„NO_AUTO_VALUE_ON_ZERO“ – chybu to
házelo dále
přiznám se, že jsem beginner a mám jeden projekt, který mi vyhazuje tuto
chybu a nerad bych se odchýlil od původního projektu, který navíc ostatním
funguje
na straně druhé nevím co všechno způsobí, když sql-mode nepojede
v defaultním režimu