To porównanie SQL Serwera z Oracle.
Przygotowywałem materiał na kolejny wpis, ale już
działający, uruchamiany na SQL Serwerze i chciałem wykorzystać możliwość
utworzenia tabel nie poprzez nazwy pól i definicje typów danych, ale poprzez
zapisanie wyniku „selecta” jako tabeli.
Na ORACLE konieczne jest wybranie przykładowych danych oraz
musi być zachowana struktura select …. from nazwa_tabeli;
To na czerwonym musi być, dlatego wykorzystuje się tabelę
dual mającą jedną wartość i działa, czyli stosuje się chwyt:
create table przyklad
as select
23 liczba
, 'Platynowa' ulica
from dual;
Taki prosty chwyt powoduje, iż powstaje tabela w tym
przypadku nazwana przyklad, ma dwa pola: liczba,
ulica, jest od razu jeden rekord danych – wartości: 23, Platynowa. I jest to
mym zdaniem intuicyjne. Po prostu widać, iż tworzymy tabelę a do niej ładujemy dane,
jeden rekord.
Na SQL Serwerze ten sam efekt uzyskamy ale tak:
select
23 liczba
, 'Platynowa' ulica
into przyklad;
Tak, powstanie tabela przyklad,
ale można się nieco być zaskoczonym, no nie? Na obrazku widać, iż zadziałało J
A dual jest też zbędny na SQL Serwerze:
select 1 liczba;
zostanie wykonane, from tabela jest
zbędne, co widać na drugim obrazku.
A już w najbliższy weekend nieco bardziej złożona sprawa
będzie przedstawiona.
Pozdrawiam,
W.
Brak komentarzy:
Prześlij komentarz