Jaka jest różnica między SQL, PL-SQL i T-SQL?
Czy ktoś może wyjaśnić różnice między tymi trzema i podać scenariusze, w których każdy byłby odpowiednio wykorzystany?
Jaka jest różnica między SQL, PL-SQL i T-SQL?
Czy ktoś może wyjaśnić różnice między tymi trzema i podać scenariusze, w których każdy byłby odpowiednio wykorzystany?
Odpowiedzi:
SQL
to język zapytań do działania na zestawach.
Jest mniej lub bardziej znormalizowany i używany przez prawie wszystkie systemy zarządzania relacyjnymi bazami danych: SQL Server, Oracle, MySQL, PostgreSQL, DB2, Informix itp.
PL/SQL
jest zastrzeżonym językiem proceduralnym używanym przez Oracle
PL/pgSQL
jest językiem proceduralnym używanym przez PostgreSQL
TSQL
jest zastrzeżonym językiem proceduralnym używanym przez Microsoft w SQL Server.
Języki proceduralne zostały zaprojektowane w celu rozszerzenia możliwości SQL przy jednoczesnej dobrej integracji z SQL. Dodano kilka funkcji, takich jak zmienne lokalne i przetwarzanie ciągów / danych. Te cechy sprawiają, że język Turinga jest kompletny.
Służą również do zapisywania procedur przechowywanych: fragmentów kodu znajdujących się na serwerze w celu zarządzania złożonymi regułami biznesowymi, które są trudne lub niemożliwe do zarządzania za pomocą operacji opartych wyłącznie na zestawie.
SQL
SQL służy do komunikacji z bazą danych, jest to standardowy język dla systemów zarządzania relacyjnymi bazami danych.
W szczególności Structured Query Language to specjalny język programowania przeznaczony do zarządzania danymi przechowywanymi w systemie zarządzania relacyjnymi bazami danych (RDBMS) lub przetwarzania strumieniowego w systemie zarządzania relacyjnymi strumieniami danych (RDSMS).
Pierwotnie oparty na relacyjnej algebrze i rachunku relacyjnym krotki, SQL składa się z języka definicji danych i języka manipulacji danymi. Zakres SQL obejmuje wstawianie danych, zapytanie, aktualizację i usuwanie, tworzenie i modyfikację schematu oraz kontrolę dostępu do danych. Chociaż SQL jest często opisywany jako język deklaratywny (4GL) i w dużej mierze jest nim, zawiera on także elementy proceduralne.
PL / SQL
PL / SQL to połączenie SQL wraz z proceduralnymi funkcjami języków programowania. Został opracowany przez Oracle Corporation
Specjalizacje z PL / SQL
T-SQL
Skrót od Transaction-SQL , rozszerzonej formy SQL, która dodaje do SQL deklarowane zmienne, kontrolę transakcji, obsługę błędów i wyjątków oraz przetwarzanie wierszy
Structured Query Language lub SQL to język programowania, który koncentruje się na zarządzaniu relacyjnymi bazami danych. SQL ma swoje własne ograniczenia, które skłoniły giganta programistycznego Microsoft do budowania na bazie SQL własnych rozszerzeń w celu zwiększenia funkcjonalności SQL . Microsoft dodał kod do SQL i nazwał go Transact-SQL lub T-SQL. Należy pamiętać, że T-SQL jest zastrzeżony i znajduje się pod kontrolą Microsoft, podczas gdy SQL, chociaż opracowany przez IBM, jest już formatem otwartym.
T-SQL dodaje szereg funkcji, które nie są dostępne w SQL.
Obejmuje to elementy programowania proceduralnego i zmienną lokalną, aby zapewnić bardziej elastyczną kontrolę przepływu aplikacji. Wiele funkcji zostało również dodanych do T-SQL, aby był bardziej wydajny; funkcje do operacji matematycznych, operacji na łańcuchach, przetwarzania daty i godziny itp. Te dodatki sprawiają, że T-SQL jest zgodny z testem kompletności Turinga, testem określającym uniwersalność języka komputerowego. SQL nie jest kompletny i jest bardzo ograniczony w zakresie tego, co potrafi.
Kolejną znaczącą różnicą między T-SQL i SQL są zmiany wprowadzone w poleceniach DELETE i UPDATE, które są już dostępne w SQL. W przypadku T-SQL zarówno DELETE, jak i UPDATE pozwalają na włączenie klauzuli FROM, która pozwala na użycie JOIN. Upraszcza to filtrowanie rekordów, aby łatwo wybrać wpisy spełniające określone kryteria, w przeciwieństwie do SQL, gdzie może to być nieco bardziej skomplikowane.
Wybór między T-SQL i SQL zależy od użytkownika. Mimo to używanie T-SQL jest jeszcze lepsze, gdy masz do czynienia z instalacjami Microsoft SQL Server. Wynika to z faktu, że T-SQL jest również od Microsoft, a użycie tych dwóch razem maksymalizuje kompatybilność. SQL jest preferowany przez osoby, które mają wiele backendów.
Odnośniki , Wikipedea, Punkty samouczka: www.differencebetween.com
SQL
język do rozmowy z bazą danych. Pozwala wybierać dane, mutować i tworzyć obiekty bazy danych (takie jak tabele, widoki itp.), Zmieniać ustawienia bazy danych.PL-SQL
proceduralny język programowania (z wbudowanym SQL) T-SQL
(proceduralne) rozszerzenia dla SQL używane przez SQL Server1. SQL lub język zapytań strukturalnych został opracowany przez IBM dla ich produktu „System R”.
Później ANSI uczyniło go standardem, na którym opierają się wszystkie języki zapytań, i rozszerzyło to, aby stworzyć własne garnitury języka zapytań DataBase. Pierwszym standardem był SQL-86, a najnowszy to SQL: 2011
2. T-SQL lub Transact-SQL został opracowany przez Sybase, a później współwłasność przez Microsoft SQL Server.
3. PL / SQL lub Procedural Language / SQL to baza danych Oracle , znana wówczas jako „oprogramowanie relacyjne”.
Udokumentowałem to w moim blogu .
Structured Query Language - SQL: to standard ANSI używany przez prawie wszystkich dostawców SGBD na całym świecie. Zasadniczo SQL jest językiem używanym do definiowania danych i manipulowania nimi [DDL i DML].
PL / SQL to język stworzony przez wszechświat Oracle. PL / SQL łączą programowe instrukcje proceduralne i umożliwiają tworzenie programów, które działają bezpośrednio w scenariuszu baz danych.
T-SQL to produkt Microsoft dopasowujący wzorce SQL z pewnymi osobliwościami. Tak więc zachęcamy do przetestowania swoich limitów.