Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> MySQL- MSSQL - kto ma jakieś doświadczenia ?
Brick
post 17.01.2008, 22:36:22
Post #1





Grupa: Zarejestrowani
Postów: 107
Pomógł: 9
Dołączył: 16.02.2004
Skąd: Kraków

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


Witam !
Czy ktoś ma jakieś większe doświadczenia z MSSQL ?
Do tej pory cały czas pracowałem na PHP + MySQL. Teraz mam do zrobienia projekt, który musi być zrealizowany na MS Windows Serwer 2003 (SP2) wraz z bazą danych MSSQL (8.0)

1. Na serwerze jest tylko jeden program który służy do zarządzania bazą - Dba Mgr2k. Dość prymitywny i nie wygodny program, zawierający tylko podstawowe opcje. Czy jakieś inne, dobre programy są tylko w wersji płatnej ?
Próbowałem uruchomić coś takiego jak PhpMSAdmin ale porażka zupełna.

2. Czy duże są różnice w składni SQL ?
Ledwie zacząłem testować i co chwilę błąd. Weźmy nawet zwykłe
CREATE TABLE test (
pole1 VARCHAR (30) default '' ,
pole2 int(10) NOT NULL default '0'
)
i jest błąd "Cannot specify a column width on data type int.

3. Czy duże różnice są w zachowaniu PHP z taką bazą danych ?
Próbowałem zrobić mssql_list_dbs, mssql_list_fields i okazuje się że nie ma takich funkcji.

dzięki z góry


--------------------
Wszystko należy robić najprościej jak się da, ale nie prościej
Albert Einstein
Go to the top of the page
+Quote Post
webdice
post 17.01.2008, 22:43:26
Post #2


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Tu masz spis funkcji, a manuala MSSQL w google.
Go to the top of the page
+Quote Post
asz
post 18.01.2008, 14:44:37
Post #3





Grupa: Zarejestrowani
Postów: 35
Pomógł: 1
Dołączył: 22.08.2007

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


Cytat(Brick @ 17.01.2008, 22:36:22 ) *
Czy duże są różnice w składni SQL ?
Ledwie zacząłem testować i co chwilę błąd. Weźmy nawet zwykłe
CREATE TABLE test (
pole1 VARCHAR (30) default '' ,
pole2 int(10) NOT NULL default '0'
)
i jest błąd "Cannot specify a column width on data type int.


Witaj.

Co do różnic pomiędzy MySQL 4/5 a MS SQL Server 2000/2005 to trochę ich jest. Niestety. Bazy te różnia się nie tylko składnią...

Powyższy błąd, który dostałeś ("Cannot specify a column width on data type int") wynika z tego, że w MS SQL Server, jak tworzysz tabelę, nie możesz podawać długości pola tj. int(10)! Powinno by po prostu int :-)

Jeżeli masz strukturę bazy w pliku .sql, które pochodzi z MySQL-a i zechcesz jej używać w MS SQL Server to przygotuj się na mnóstwo błędów. Zanim jej użyjesz muisisz troszkę pozmieniać w jej strukturze...

Długo by tu pisać. Powiem Ci, że na ten temat postanowiłem napisać... książkę. Wyda ją Helion za kilka miesięcy. Zachęcam do kupna:-). Generalnie bedzie ona o PHP, IIS 6/7 i bazach MS SQL Server 2000/2005. Wszystko na przykładach Windows Server 2003 Ent. Edition, Vista... ale nie tylko :-)

Ten post edytował asz 18.01.2008, 14:49:02
Go to the top of the page
+Quote Post
Brick
post 18.01.2008, 15:37:58
Post #4





Grupa: Zarejestrowani
Postów: 107
Pomógł: 9
Dołączył: 16.02.2004
Skąd: Kraków

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


Dzięki za odpowiedź.
Spis funkcji przejrzałem i trochę brakuje w stosunku do MySQL
Czyli wygląda na to że lekko nie będzie, zwłaszcza że wszystko mam pisane pod MySQL.
Jeżeli piszesz książkę, to faktycznie masz bogatą wiedzę na ten temat, gratuluję !
Ja niestety nie mogę sobie pozwolić na zgłębianie nowego zagadnienia i przerabianie dużej ilości skryptów ze względu na jednego klienta. Zbyt dużo czasu by to zajęło, a klienci non stop poganiają ;)
Trzeba będzie odpuścić to zlecenie.

Dziękuję jeszcze raz


--------------------
Wszystko należy robić najprościej jak się da, ale nie prościej
Albert Einstein
Go to the top of the page
+Quote Post
webdice
post 18.01.2008, 16:55:38
Post #5


Developer


Grupa: Moderatorzy
Postów: 3 045
Pomógł: 290
Dołączył: 20.01.2007




Poczytaj o PDO, może ułatwi Ci prace.
Go to the top of the page
+Quote Post
asz
post 18.01.2008, 18:16:12
Post #6





Grupa: Zarejestrowani
Postów: 35
Pomógł: 1
Dołączył: 22.08.2007

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


Cytat(Brick @ 18.01.2008, 15:37:58 ) *
Jeżeli piszesz książkę, to faktycznie masz bogatą wiedzę na ten temat, gratuluję !


Dziękuję. Staram się :-) Generalnie to życie mnie do tego trochę zmusiło :-) Od lutego siadam do pisania wielkiej i rozbudowanej aplikacji opartej na PHP5, IIS 6 i MS SQL 2005 (wszystko pracować będzie pod Windows Server 2003)... Zastanawiam się nad wrzuceniem do tego SMARTY. Skorzystam też pewnie z PEAR DB, gdyż fima ma nie tylko MS SQL ale i Oracle'a. Nigdy nie wiadomo, co przyjdzie im do głowy:-)

Co do Twojego projektu to myślę, że powinieneś swoją bazę danych wyeksportować do jakiegoś pliku, przejrzeć i poprawić, tak by MS SQL Server ją mógł strawić. Problem może być nie tylko ze strukturą bazy ale i z danymi z poszczególnych tabel. Ja przenosiłem niezbyt dużą bazę z MySQL-a na MS SQL Server-a i troszkę było kombinowania. Najpierw z samą strukturą a potem z danymi. Na szczęści pomógł mi w tym... notatnik Windows-a :-) Nie sądziłem, że może być tak przydatny...

P.S. Jak byś miał jakieś pytania to wal śmiało. W wolnej chwili może i będę mógł pomóc.

Ten post edytował asz 18.01.2008, 18:18:18
Go to the top of the page
+Quote Post
Brick
post 18.01.2008, 22:59:34
Post #7





Grupa: Zarejestrowani
Postów: 107
Pomógł: 9
Dołączył: 16.02.2004
Skąd: Kraków

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


Problem nie tylko polega zaimportowaniu plików sql z bazy MySQL, ale też na tym, że mam bardzo dużo różnych skryptów PHP pracujących na tych tabelach. Zatem czekało by mnie gruntowne przerabianie wszystkich zapytań znajdujących się w skryptach (+ walka z nawykami przy pisaniu nowych skryptów)

Brakuje też programu do zarządzania tą bazą.


--------------------
Wszystko należy robić najprościej jak się da, ale nie prościej
Albert Einstein
Go to the top of the page
+Quote Post
asz
post 19.01.2008, 08:45:32
Post #8





Grupa: Zarejestrowani
Postów: 35
Pomógł: 1
Dołączył: 22.08.2007

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


Cytat(Brick @ 18.01.2008, 22:59:34 ) *
Problem nie tylko polega zaimportowaniu plików sql z bazy MySQL, ale też na tym, że mam bardzo dużo różnych skryptów PHP pracujących na tych tabelach. Zatem czekało by mnie gruntowne przerabianie wszystkich zapytań znajdujących się w skryptach (+ walka z nawykami przy pisaniu nowych skryptów)

Brakuje też programu do zarządzania tą bazą.


No to Ci nie zazdroszczę. Dosyć, że bazę trzeba byłoby przerobić, to jeszcze problem z wczytaniem danych i poprawienie skryptów. Zrobić się da, ale jakim kosztem. Decyzję musisz Ty sam podjąć. Jak pisałem z mniejszymi bazami nie ma większego problemu.

P.S. Co do gruntownego przerabiania skryptów PHP to warto pomyśleć na przyszłość do module PEAR DB zamiast używania w skryptach funkcji do obsługi poszczególnych baz danych. Warto też pomyśleć o jakimś globalnym skrypcie, gdzie te ustawienia byłyby dostępne. Jest wiele możwliwości...:-)

Pozdrawiam,
Andrzej
Go to the top of the page
+Quote Post

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

 



RSS Wersja Lo-Fi Aktualny czas: 19.04.2024 - 23:58