![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 8.11.2005 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Mam taki problem. Chciałbym zrobić multi inserta czyli np INSERT INTO tabela (id, nazwa) VALUES (1,'aaa'), (2,'bbb') itd. w procedurze składowanej gdzie wartości byłyby generowane w sposób automatyczny. Niestety mysql nie chce współpracować. Oto kod:
Błąd wyrzuca w końcowym INSERCIE: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'final_text; END; END' O co chodzi w procedurze? Pobrany parametr id usera np 1 oraz string z liczbami: '2;3;6;13;' ma być połączony by dać w efekcie (1,2),(1,3),(1,6),(1,13) Wydaje mi się, że WHILE dobrze wykonuje swoje zadanie, ale jak teraz ten string wrzucić jako VALUES ? |
|
|
![]()
Post
#2
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
przeciez skladnia insert wyglada tak:
a ty dales:
Widzisz drobną roznice? -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 8.11.2005 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
@nospor ale final_text jest wcześniej przygotowany z insertString...
insertString to (1,'aa'),(1,'bb'),(1,'cccc'), - z tego ucinam ostatni przecinek, żeby nie było błędu a potem przypisuje do finala - ten jest wrzucany w INSERTA Aha, no i Twój sposób nijak się ma do "multi inserta" ![]() Ten post edytował adalgrim 12.08.2009, 13:41:08 |
|
|
![]()
Post
#4
|
|
![]() Grupa: Moderatorzy Postów: 36 557 Pomógł: 6315 Dołączył: 27.12.2004 ![]() |
no ale co z tego? Nie rozumiesz ze skladnia jest taka a taka i mysql nie obchodzi co ty trzymasz w zmiennej final_text. To co podales nie odpowiada skladni i koniec kropka.
edit: takie przygotowanie tekstu w zmiennej to sobie w php mozesz zrobic i potem na podstawie tego stworzyc gotowego inserta. ale w samym mysql nie mozesz w taki sposob operować -------------------- "Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista "Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 30 Pomógł: 0 Dołączył: 8.11.2005 Skąd: Zabrze Ostrzeżenie: (0%) ![]() ![]() |
Składnie znam. Chodziło mi po prostu o takie potwierdzenie - że się nie da i już
![]() Dzięki. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 02:25 |