Szukam sposobu na wstawianie wielu wierszy, gdy wstawiam tylko dane dla pojedynczej kolumny.MySQL: Wiele wstawek dla pojedynczej kolumny
Oto przykład tabela:
+-------+-------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------+-------------+------+-----+---------+----------------+
| id | tinyint(4) | NO | PRI | NULL | auto_increment |
| name | varchar(40) | NO | UNI | NULL | |
+-------+-------------+------+-----+---------+----------------+
Chcę móc wstawić coś podobnego („Administrator”, „autor”, „mod”, „użytkownik”, „guest”) w imieniu kolumna dla każdego wiersza.
Dokumentacja MySQL pokazuje, że wielokrotne wkładki powinna być w formacie:
INSERT INTO tbl_name (a,b,c) VALUES(1,2,3),(4,5,6),(7,8,9);
jednak kończy się moja wypowiedź wygląda tak:
INSERT INTO User_Role(name) VALUES ('admin','author','mod','user','guest');
I uzyskać następujące:
ERROR 1136 (21S01): Liczba kolumn nie jest zgodna z liczbą wierszy w wierszu 1
To znaczy, że myśli, że próbuję zrobić si Wstaw wiersz.
Nie jestem pewien, czy po prostu brakuje mi czegoś prostego tutaj, ale nie widzę niczego szczególnego w dokumentach MySQL dla tego przypadku użycia.
Ah, dzięki! Pierwsza praca ze składnią wielowątkową. Przyjmuję, gdy tylko pozwoli mi to być – tsgrasser
, powinieneś także wiedzieć, że to nie działa w MSSQL. MySQL i kilka innych obsługuje wiele wstawek, ale ostatnio użyłem SQL Servera, który nie akceptował tej składni. –
Wiem, że jest to bardzo stara odpowiedź, ale pomyślałem, że wspomnę o tej wersji od wersji 2008, działa to również w MSSQL. – user1751825