Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL]problem z dołączeniem pliku sql do bazy
Forum PHP.pl > Forum > Przedszkole
pumbosha
Mam taki problem, od razu zaznaczę, że zacząłem się uczyć mysql z tydzien temu. W książce którą czytam dotarłem do rozdziału o tworzeniu tabel i wczytywaniu tabel z pliku sql. Plik ten dołączony jest do przykładów książki. I teraz napisane jest tam ,że aby tenże plik (w którym tworzone są nowe tabele) został 'wykonany' i dołączony do nowo utworzonej przeze mnie bazy należy wpisać coś takiego :
Kod
mysql -h nazwa_kompa -u nazwa_usera -D nazwa_bazy -p < plik.sql


Po wpisaniu tego monit mysql wywala mi błąd w składni. Byłbym wdzięczny jakby mi ktoś pomógł, najlepiej opisał od A do Z jak dołączyć gotowy plik sql do bazy. Szukam już 2. dzień i nie mogę nigdzie znaleźć czegoś co rozwiało by mój problem... z góry dzięki..
nospor
Cytat
mysql wywala mi błąd w składni

Pierwsza i jedna z wazniejszych lekcji na tym forum:
Jak cos wywala blad to nalezy ten blad nam dokladnie pokazac
pumbosha
ok błąd brzmi:

ERROR 1064 <42000>: You have an error in your sql syntax; check the manual that corresponds to your MySql server version for right syntax to use near 'mysql -h timi -u timi -D baza -p <ksiazkorama.sql' at line 1
erix
Chyba masz coś za dużo w pliku do importu. winksmiley.jpg
pumbosha
yyyy, no jak już wspomniałem uczę się mysql parę dni więc nie bardzo wiem o co chodzi z plikiem importu, mimo wszystko dzięki za próbę pomocy...pzdr
erix
Z treści błędu wynika, iż masz wpisane polecenie importujące w pliku, w którym znajdują się dane.

A tego polecenia ma tam nie być; tylko i wyłącznie zapytania SQL.
pumbosha
plik ksiazkorama.sql, który próbuję dołączyć jest wzięty żywcem z książki, więc wątpię żeby w nim było coś nie tak. Wygląda on tak:

create table klienci
( klientid int unsigned not null auto_increment primary key,
nazwisko char(50) not null,
adres char(100) not null,
miejscowosc char(30) not null
);

create table zamowienia
( zamowienieid int unsigned not null auto_increment primary key,
klientid int unsigned not null,
wartosc float(6,2),
data date not null
);

create table ksiazki
( isbn char(13) not null primary key,
autor char(50),
tytul char(100),
cena float(4,2)
);

create table pozycje_zamowione
( zamowienieid int unsigned not null,
isbn char(13) not null,
ilosc tinyint unsigned,

primary key (zamowienieid, isbn)

);

create table recenzje_ksiazek
( isbn char(13) not null primary key,
recenzja text
);
erix
Ach, już wiem:
wywołaj polecenie importu z konsoli systemowej, a nie konsoli mysql. winksmiley.jpg
pumbosha
tak też próbowałem i nic... A może po prostu powiedzcie mi (jeśli to możliwe) czy i w jaki sposób wy dołączacie gotowy plik sql do bazy danych i czy na dłuższą metę można obejść się bez tej umiejętności...pzdr
erix
Cytat
tak też próbowałem i nic...

Jeśli wywala ten sam błąd, to znaczy, że źle próbowałeś. winksmiley.jpg

Cytat
i w jaki sposób wy dołączacie gotowy plik sql do bazy danych

Jeśli jest dostęp do shella, to właśnie przez polecenie mysql. Jeśli nie, to zazwyczaj phpMyAdmin.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.