386 Stimmen

Was ist der Unterschied zwischen SQL, PL-SQL und T-SQL?

Was ist der Unterschied zwischen SQL, PL-SQL und T-SQL?

Kann jemand erklären, worin die Unterschiede zwischen diesen drei Arten bestehen, und Szenarien nennen, in denen jede von ihnen sinnvoll eingesetzt werden könnte?

410voto

Quassnoi Punkte 396418
  • SQL ist eine Abfragesprache zur Bearbeitung von Mengen.

    Es ist mehr oder weniger standardisiert und wird von fast allen relationalen Datenbankmanagementsystemen verwendet: SQL Server, Oracle, MySQL, PostgreSQL, DB2, Informix, usw.

  • PL/SQL ist eine proprietäre prozedurale Sprache, die von Oracle verwendet wird

  • PL/pgSQL ist eine prozedurale Sprache, die von PostgreSQL verwendet wird

  • TSQL ist eine proprietäre prozedurale Sprache, die von Microsoft in SQL Server verwendet wird.

Prozedurale Sprachen wurden entwickelt, um die Fähigkeiten von SQL zu erweitern und sich gleichzeitig gut in SQL zu integrieren. Mehrere Merkmale wie lokale Variablen und die Verarbeitung von Zeichenketten/Daten werden hinzugefügt. Diese Merkmale machen die Sprache Turing-komplett.

Sie werden auch verwendet, um gespeicherte Prozeduren zu schreiben: Codestücke, die sich auf dem Server befinden, um komplexe Geschäftsregeln zu verwalten, die mit rein mengenbasierten Operationen nur schwer oder gar nicht zu verwalten sind.

122voto

Arunprasanth K V Punkte 18995

SQL

SQL wird für die Kommunikation mit einer Datenbank verwendet, Sprache für relationale Datenbankmanagementsysteme.

Im Detail Strukturierte Abfragesprache ist eine spezielle Programmiersprache für die Verwaltung von Daten in einem relationalen Datenbankmanagementsystem (RDBMS) oder für die Datenstromverarbeitung in einem relationalen Datenstrommanagementsystem (RDSMS).

SQL basiert ursprünglich auf der relationalen Algebra und dem Tupelrelationskalkül und besteht aus einer Datendefinitions- und einer Datenmanipulationssprache. Der Anwendungsbereich von SQL umfasst das Einfügen, Abfragen, Aktualisieren und Löschen von Daten, die Erstellung und Änderung von Schemata sowie die Datenzugriffskontrolle. Obwohl SQL oft als deklarative Sprache (4GL) beschrieben wird und dies auch weitgehend ist, enthält sie auch prozedurale Elemente.

PL/SQL

PL/SQL ist eine Kombination aus SQL und den prozeduralen Eigenschaften von Programmiersprachen. Es wurde von der Oracle Corporation entwickelt.

Besonderheiten von PL/SQL

  • vollständig portable, leistungsstarke Transaktionsverarbeitung Sprache.
  • bietet eine eingebaute interpretierte und OS-unabhängige Programmierung Umgebung.
  • direkt über die SQL*Plus-Befehlszeilenschnittstelle aufgerufen werden.
  • Der Direktaufruf kann auch aus Aufrufen externer Programmiersprachen erfolgen zur Datenbank erfolgen.
  • Die allgemeine Syntax ist an die der ADA- und Pascal-Programmierung angelehnt. Sprache.
  • Abgesehen von Oracle ist es in TimesTen In-Memory-Datenbanken und IBM DB2.

T-SQL

Kurz für Transaktions-SQL eine erweiterte Form von SQL, die SQL um deklarierte Variablen, Transaktionskontrolle, Fehler- und Ausnahmebehandlung und Zeilenverarbeitung erweitert

Die Structured Query Language oder SQL ist eine Programmiersprache, die sich auf die Verwaltung relationaler Datenbanken konzentriert. SQL hat seine eigenen Grenzen was den Software-Giganten dazu veranlasste Microsoft kann auf SQL mit eigenen Erweiterungen aufbauen, um die Funktionalität von SQL zu verbessern . Microsoft fügte Code zu SQL hinzu und nannte ihn Transact-SQL oder T-SQL. Beachten Sie, dass T-SQL proprietär ist und unter der Kontrolle von Microsoft steht, während SQL, obwohl von IBM entwickelt, bereits ein offenes Format ist.

T-SQL bietet eine Reihe von Funktionen, die in SQL nicht verfügbar sind.

Dies beinhaltet prozedurale Programmierungselemente und eine lokale Variable, um eine flexiblere Kontrolle über den Ablauf der Anwendung zu ermöglichen. Außerdem wurde eine Reihe von Funktionen zu T-SQL hinzugefügt, um es leistungsfähiger zu machen; Funktionen für mathematische Operationen, String-Operationen, Datums- und Zeitverarbeitung und dergleichen. Durch diese Ergänzungen erfüllt T-SQL den Turing-Vollständigkeitstest, ein Test, der die Universalität einer Computersprache bestimmt. SQL ist nicht Turing-komplett und in seinen Möglichkeiten stark eingeschränkt.

Ein weiterer signifikanter Unterschied zwischen T-SQL und SQL sind die Änderungen an den Befehlen DELETE und UPDATE, die bereits in SQL verfügbar sind. Bei T-SQL erlauben die Befehle DELETE und UPDATE die Aufnahme einer FROM-Klausel, die die Verwendung von JOINs ermöglicht. Dies vereinfacht das Filtern von Datensätzen, um einfach die Einträge herauszufiltern, die einem bestimmten Kriterium entsprechen, im Gegensatz zu SQL, wo dies etwas komplizierter sein kann.

Die Wahl zwischen T-SQL und SQL bleibt dem Benutzer überlassen. Dennoch ist die Verwendung von T-SQL immer noch besser, wenn Sie mit Microsoft SQL Server-Installationen zu tun haben. Der Grund dafür ist, dass T-SQL ebenfalls von Microsoft stammt und die gemeinsame Verwendung von T-SQL und SQL die Kompatibilität maximiert. SQL wird von Leuten bevorzugt, die mehrere Backends haben.

Referenzen , Wikipedea , Tutorial Punkte :www.differencebetween.com

44voto

diederikh Punkte 25146
  • SQL eine Sprache für das Gespräch mit dem Datenbank. Mit ihr können Sie Daten auswählen, ändern und erstellen von Datenbankobjekten (wie Tabellen, Ansichten, usw.), ändern Datenbankeinstellungen.
  • PL-SQL eine prozedurale Programmiersprache (mit eingebettetem SQL)
  • T-SQL (prozedurale) Erweiterungen für SQL verwendet von SQL Server

33voto

Manoj Pandey Punkte 1237

1. SQL oder Structured Query Language wurde von IBM für ihr Produkt "System R" entwickelt.

Später ANSI machte es als Standard auf der alle Abfragesprachen beruhen, und haben diese erweitert, um ihre eigenen DataBase Query Language-Anzüge zu schaffen. Der erste Standard war SQL-86 und zuletzt SQL:2016

2. T-SQL oder Transact-SQL wurde entwickelt von Sybase und später im Miteigentum von Microsoft SQL-Server.

3. PL/SQL oder Prozedurale Sprache/SQL war Oracle Datenbank, damals noch unter dem Namen "Relation Software" bekannt.

Ich habe dies in meinem Blog-Beitrag .

7voto

Jayron Soares Punkte 421

Structured Query Language - SQL: ist ein ANSI-Standard, der von fast allen SGBD-Anbietern auf der ganzen Welt verwendet wird. Im Grunde ist SQL eine Sprache zur Definition und Manipulation von Daten [DDL und DML].

PL/SQL ist eine vom Oracle-Universum entwickelte Sprache. PL/SQL kombiniert prozedurale Programmieranweisungen und ermöglicht die Erstellung von Programmen, die direkt auf dem Datenbankszenario arbeiten.

T-SQL ist ein Microsoft-Produkt, das sich an SQL-Mustern orientiert, mit einigen Besonderheiten. Testen Sie also ruhig Ihre Grenzen.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X