Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: problem z usuwaniem tabel
Forum PHP.pl > Forum > Bazy danych > PostgreSQL
suze_e
Dzien dobry,
Mam problem z usuwaniem tabel w postgresie.
mam tabele pracownicy i wpisuje drop table pracownicy
i ona wyswietla sie nadal:/ Poza tym jak usuwam tabele to chyba pownien pojawic sie komunikat, ze jest juz usunieta tak?
Moze zle cos wpisuje?

Mam jeszcze pytanie jakim poleceniem moge wyswietlic tabele? Chodzi mi o to zeby wyswietlaly sie wszystkie info dotyczace typow danych w niej, kluczy itp.

Przepraszam jesli zadaje pytania banalne ale wlasnie robie moja pierwsza baze i kompletnie sie nie znam:)

Pozdrawiam
SongoQ
  1. DROP TABLE tabela1, tabela2, ..., tabelan
to powinno dzialac na 1000%. Wywolujesz z klienta postgresa czy z aplikacji php?
suze_e
z postgresa. już zadziałało ale nie wiem dlaczego nie działało:/ może zrobiłam jakąs literówke.. nie mam pojecia

a teraz mam inny problem
loguje sie jako postgres i robie createuser -P nazwa_jakas
tworzy sie uzytkownik i potem chce sie przełączyc na tego usera wiec pisze su nazwa_jakas i wyswietla komunikat ze nieznany id. Coś robię źle?
SongoQ
Cytat
ze nieznany id. Coś robię źle?

Z postgresa robisz?questionmark.gif Chyba Ci sie konta pomylily bo jak dajesz w systemie su i nie ma takiego usera to taki blad wyskakuje.
suze_e
Może ja coś źle rozumiem. ale mam usera postgres. i loguje sie na linuxa na roota. piszę su postgres i juz pracuje jako postgres. i teraz w bazie chce dodać nowego usera i się na niego zalogować:) Więc jak się to robi? Bo właśnie przeglądam dokumentację ale jak na razie nic na ten temat nie znalazłam:/
dr_bonzo
Cytat
CREATE USER name;

name follows the rules for SQL identifiers: either unadorned without special characters, or double-quoted. To remove an existing user, use the analogous DROP USER command:

DROP USER name;

For convenience, the programs createuser and dropuser are provided as wrappers around these SQL commands that can be called from the shell command line:

createuser name
dropuser name

To determine the set of existing users, examine the pg_user system catalog, for example

SELECT usename FROM pg_user;

Z manuala lub z instalki psql'a.
suze_e
obawiam się, że nie odpowiedziałes na moje pytanie.
dr_bonzo
Moj blad.

logujemy sie jako "'PG root", do bazy postgres:
Kod
./psql postgres <defaultowyUser>

<defaultowyUser> u mnie: psql, nie wiem czy go zmienialem czy to jest defaultowy po instalacji
dodajemy usera
  1. CREATE USER jakisUser

wychodzimy (moze jakos da sie przelaczyc usera bez wychodzenia?questionmark.gif)
Kod
\q

Kod
./psql postgres jakisUser
suze_e
huh,
wszystko ok tylko ja nie loguje sie do bazy pisząc ./psql Nie mam niczego takiego
hmm
do tej pory pisałam z roota su postgres a potem psql nazwabazy i działałam sobie:)

I troszke sie pogubiłam.

No to jeszcze raz:)
mam takiego usera:
postgres@host:/root$ createuser test001
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) n
CREATE USER

I teraz chcę się na niego zalogować:) Proste.
hmm
próbowałam wpisywać:
postgres@host:/root$ psql -U test001
psql (pg_wrapper): No database specified

No więc nadal nie wiem jak sie zalogowac na tego stworzonego usera i jak odpalic psqla:/
dr_bonzo
./psql
Oznacza uruchomienie programu z aktualnego katalogu
Gdy uruchamiasz psql -- to jest on uruchamiany z lokalizacji zdefiniowanej w zmiennej srodowiskowej PATH - proste ?: ) - po prostu z kazdego miejsca jest go latwo wywolac. Uzylem ./psql bo mam PSQLa w niestandardowym miejscu + lenistwo - nie ustawiam PATHa.

psql --help
i wiesz jak specyfikowac usera i baze przy polaczeniu
psql [OPTIONS]... [DBNAME [USERNAME]]

np.
psql nazwaBazy twojUser
suze_e
ok. ja mam w takim razie psqla w standardowym miejscu i w $PATH wszystko jak trzeba:) nie wiem jak to jest bo nie ja konfigurowałam:)

okej. ale ja chcę połączyć się na tego nowego usera i stworzyć dopiero baze. jako ten user. bo chodzi o to że mam jakąś baze stworzoną przez usera postgres i teraz chcę zrobić drugą bazę ale należącą do innego usera. żeby sobie nie przeszkadzały:)

eee. idę troche poczytać:)
Dzięki za podpowiedzi:)
dr_bonzo
createdb -U user bazaDanych
suze_e
Ale to mi nie działa:/
Bo rozumiem, że najpierw loguje sie do postgresa. no a test01 to nazwa usera którego przed chwilą utworzyłam. Nie rozumiem tylko dlaczego przy tworzeniu bazy pyta się o hasło skoro userowi nie ustawiłam żadnego hasła:/

Kod
postgres@host:/root$ createdb -U test01 MojaBaza
Password:
createdb: could not connect to database template1: FATAL:  Password authentication failed for user "test01"
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.