Odwykłem od nakładek typu phpMyAdmin - wszystkie zapytania i modyfikacje wykonuję w postgresie z konsoli i jest mi z tym dobrze. :) Spróbuję tak samo działać w MySQl'u.
Już na starcie niestety uderzył mnie w MySQL'u brak "podpowiadania" poleceń po wciśnięciu Tab - to jakaś masakra (EDIT: okazuje się że podpowiada jak się pisze dużymi literami). Nie podpowiada też ścieżki do pliku, który chciałbym na przykład wczytać...
Oto kilka różnic, które dostrzegłem po kilku chwilach:
Tworzenie nowej bazy danych
W PostgreSQL i w MySQL wygląda to tak samo:
CREATE DATABASE nazwa_bazy;
W postgresie można utowrzyć nową bazę jeszcze nie będąc w psql:
createdb -U nazwa_usera nazwa_bazy
W mysql pewnie też można ale ja tego póki co nie odkryłem... :)
Wejście do bazy danych
psql:
psql -W -U nazwa_usera nazwa_bazy
mysql:
mysql -u nazwa_usera -p -D nazwa_bazy
Wczytanie kodu SQL z pliku
psql:
$ psql -U nazwa_usera nazwa_bazy -f /var/www/projekt/sql/0001.sql
lub
\i /var/www/projekt/sql/0001.sql
mysql:
$ mysql -u nazwa_usera -p nazwa_bazy < /var/www/projekt/sql/0001.sqllub
\. /var/www/projekt/sql/0001.sqlWielkich różnic tutaj nie ma - oprócz wyżej wspomnianego braku podpowiadania...
Wyświetlenie baz danych
psql:select datname from pg_database;mysql:
show databases;
Wyświetlenie tabel bazy danych
psql:\dtmysql:
show tables;
Wyświetlenie szczegółów tabeli
psql:\d nazwa_tabelimysql:
describe nazwa_tabeli;
Modyfikacja kolumny tabeli
psql:ALTER TABLE t1 ALTER COLUMN test TYPE VARCHAR(255);mysql:
ALTER TABLE t1 MODIFY test VARCHAR(255);
Jest na pewno jeszcze pół miliona więcej różnic - jak coś zauważę to dodam do listy.
Brak komentarzy:
Prześlij komentarz