Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Problem ze skryptem do tworzenia bazy w PHP
k_uba
post
Post #1





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 13.12.2006

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


Witam
Mam następujący problem. Chciałem stworzyć skrypt który stworzy mi bazę oraz jej strukturę dla MySQL skrypt wygląda następująco:

  1. $db_host = localhost;
  2. $db_user = uzytkownik;
  3. $db_pass = haslo;
  4. $db_name = nazwa;
  5.  
  6. $link = mysql_connect($db_host , $db_user, $db_pass);
  7. if (!$link) {
  8. die('Nie mozna sie polaczyc: ' . mysql_error());
  9. }
  10.  
  11. $sql = "CREATE DATABASE $db_name";
  12. if (mysql_query($sql, $link)) {
  13. echo "<br> Baza <b>$db_name</b> zostala pomyslnie utworzona.\n";
  14. } else {
  15. echo '<br><b> Blad podczas tworzenia bazy: </b><br>' . mysql_error() . "\n";
  16. }
  17.  
  18. /*Wybieranie bazy*/
  19. $db_selected = mysql_select_db($db_name, $link);
  20. if (!$db_selected) {
  21. die ("Nie mozna ustawic bazy $db_name : " . mysql_error());
  22. }
  23.  
  24. $autorzy = "CREATE TABLE `autorzy` ( ".
  25. "`Id_autorzy` int(11) NOT NULL auto_increment, ".
  26. "`Imie` varchar(50) collate utf8_polish_ci NOT NULL, ".
  27. "`Nazwisko` varchar(100) collate utf8_polish_ci NOT NULL, ".
  28. "PRIMARY KEY (`Id_autorzy`) ".
  29. ") ENGINE=MyISAM AUTO_INCREMENT=10072 DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;";
  30.  
  31. mysql_query($autorzy) or die(mysql_error());
  32.  


Chciałbym stworzyć taki sam skrypt dla PostgreSQL ale mi nie wychodzi. Można prosić o jakieś sugestie.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
Zbłąkany
post
Post #2


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

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


A można prosić o kod, który Tobie nie działa? Czyżbyś oczekiwał, że ktoś będzie pisał kod za Ciebie? Pokaż kod, który nie działa, a wtedy spróbujemy znaleźć rozwiązanie (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
patryczakowy
post
Post #3





Grupa: Zarejestrowani
Postów: 420
Pomógł: 44
Dołączył: 22.10.2008

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


Na pewno dla pg musisz używać innych funkcji funkcja mysql_connect jest tylko dla MYSQL a tobie jest potrzebna pg_connect i cała jej rodzina ponadto napewno obie bazy różnią się dialektem SQL-a dlatego pytanie może też będziesz musiał zmodyfikować ale tutaj mogą się wypowiedzieć specjaliści od pg
Go to the top of the page
+Quote Post
k_uba
post
Post #4





Grupa: Zarejestrowani
Postów: 36
Pomógł: 0
Dołączył: 13.12.2006

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


Próbowałem podmienić kod ale pg_connect wymaga podania bazy z jaką chce się połączyć. To powiem inaczej. Czy istnieje funkcja która pozwoli mi sie podłączyć do serwera a potem na nim stworzyć bazę. Nie potrzebuje kodu tyko jakiejś sugestii, która mnie nakieruje. Kodu nie mam bo nie wiem jak go napisać. Dla MySQL zrobiłem a dla PostgreSQL nie wiem jak się za to zabrać.
Go to the top of the page
+Quote Post
Zbłąkany
post
Post #5


Administrator serwera


Grupa: Developerzy
Postów: 521
Pomógł: 13
Dołączył: 2.04.2004
Skąd: 52°24' N 16°56' E

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


Dla PostgreSQL głównym użytkownikiem jest postgres, a podstawowa baza to template1. Nie ma takiej funkcji, byś sobie stworzył nią bazę (no chyba, że ją sobie napiszesz), musisz wykonać zapytanie SQL, i potem się przelogować. PostgreSQL do logowania wymaga podania bazy.
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: 23.08.2025 - 02:04