Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Oracle] błąd przy dodawaniu wielu rekordów
czychacz
post
Post #1





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


chcę wywołać kwerendę:
  1. INSERT INTO osvc_pracownicy (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'), (prac_id_inc.NEXTVAL, 'Jan', 'Nowak')

ale przy wykonaniu dostaję błąd:
Cytat
ORA-00933: SQL command not properly ended

przy pojedynczym dodawaniu wszystko jest ok:
  1. INSERT INTO osvc_pracownicy (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz')


co jest problemem?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 5)
woj_tas
post
Post #2





Grupa: Zarejestrowani
Postów: 230
Pomógł: 36
Dołączył: 31.03.2006
Skąd: Zielona Góra

Ostrzeżenie: (0%)
-----


A nie tak:

  1. INSERT ALL
  2. INTO <table_name> VALUES <column_name_list)
  3. INTO <table_name> VALUES <column_name_list)
Go to the top of the page
+Quote Post
czychacz
post
Post #3





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


zapytanie:
  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')

daje błąd:
Cytat
ORA-00928: missing SELECT keyword
Go to the top of the page
+Quote Post
woj_tas
post
Post #4





Grupa: Zarejestrowani
Postów: 230
Pomógł: 36
Dołączył: 31.03.2006
Skąd: Zielona Góra

Ostrzeżenie: (0%)
-----


Sprawdź tu
Go to the top of the page
+Quote Post
mkozak
post
Post #5





Grupa: Zarejestrowani
Postów: 78
Pomógł: 4
Dołączył: 21.03.2005

Ostrzeżenie: (0%)
-----


Cytat(czychacz @ 6.07.2010, 12:29:52 ) *
zapytanie:
  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')

daje błąd:


Tak, bo składnia wymaga, żeby na końcu był SELECT, więc

  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')
  5. SELECT true FROM DUAL;
Go to the top of the page
+Quote Post
czychacz
post
Post #6





Grupa: Zarejestrowani
Postów: 189
Pomógł: 13
Dołączył: 20.09.2008
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Cytat(mkozak @ 7.07.2010, 13:54:06 ) *
Tak, bo składnia wymaga, żeby na końcu był SELECT, więc

  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')
  5. SELECT true FROM DUAL;

to zapytanie nie działa. wywołuje:
Cytat
ORA-00904: "TRUE": invalid identifier

próbowałem:
  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')
  5. SELECT prac_id FROM OSVC_PRACOWNICY

błędów nie było, ale nic nie dodało do tabeli
za to zapytanie:
  1. INSERT ALL
  2. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Jan', 'Kowalski'),
  3. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Grzegorz', 'Brzęczyszczykiewicz'),
  4. INTO OSVC_PRACOWNICY (prac_id, imie, nazwisko) VALUES (prac_id_inc.NEXTVAL, 'Karol', 'Nowak')
  5. SELECT * FROM DUAL

zwraca błąd:
Cytat
ORA-00001: unique constraint (OSVC.SYS_C004181) violated
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 21:32