Vous n'êtes pas identifié(e).
- Contributions : Récentes | Sans réponse
Pages : 1
#1 26/03/2013 11:34:22
- SQLpro
- Membre
Comparatif PostGreSQL 9.2 / SQL Server 2012
Bonjour,
Voici une étude comparant les fonctionnalités de Microsoft SQL Server version 2012 et de PostGreSQL version 9.2.
Dans ce comparatif des fonctionnalités de nombreuses sources et explication sont fournies.
http://blog.developpez.com/sqlpro/p1185 … erver-2012
Vos commentaires sont les bienvenus
Sincères salutations
Frédéric Brouard, alias SQLpro, ARCHITECTE DE DONNÉES, Expert langage SQL
Le site sur les SGBD relationnel et langage SQL : http://sqlpro.developpez.com/
Modélisation de données, conseil, expertise, audit, optimisation, tuning, formation
* * * * * Enseignant CNAM PACA, ISEN Toulon, CESI Aix en Provence * * * * *
Hors ligne
#2 26/03/2013 14:22:14
- MitsuTomoe
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
Je débute en PG, mais on peut faire des transactions DDL :
conclavi_test=# begin;
BEGIN
conclavi_test=# create table a (x integer);
CREATE TABLE
conclavi_test=# rollback;
ROLLBACK
conclavi_test=# \dS a
Aucune relation nommée « a » n'a été trouvée.
conclavi_test=# begin;
BEGIN
conclavi_test=# \dS a
Table « public.a »
Colonne | Type | Modificateurs
---------+---------+---------------
x | integer |
conclavi_test=# drop table a;
DROP TABLE
conclavi_test=# rollback;
ROLLBACK
conclavi_test=# \dS a
Table « public.a »
Colonne | Type | Modificateurs
---------+---------+---------------
x | integer |
Du coup, j'ai des doutes sur le reste...
Hors ligne
#3 26/03/2013 14:34:31
- MitsuTomoe
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
La richesse des types de données de PG n'est pas mise en avant.
Par exemple, je suis en train d'évaluer l'utilisation des types intervalle dans notre projet,
et il semble ne pas y avoir de type booléen dans SQL Server 2012.
Hors ligne
#4 26/03/2013 15:02:17
- MitsuTomoe
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
Pour ce qui est de la conformité à la norme SQL, PG est plutôt conforme à SQL:2011 .
Extrait de la documentation :
PostgreSQL supports most of the major features of SQL:2011. Out of 179 mandatory features required for full Core conformance, PostgreSQL conforms to at least 160.
Hors ligne
#5 26/03/2013 18:21:33
- arthurr
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
Ce monsieur passe son temps à écrire ce genre d'articles TRÈS TRÈS orientés.
Et à la moindre critique il annonce que les gens de la communauté ne supportent pas la moindre critique.
Faut juste laisser passer : un jour il va se fatiguer (ou pas).
Hors ligne
#6 26/03/2013 18:53:39
- SQLpro
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
La richesse des types de données de PG n'est pas mise en avant.
Par exemple, je suis en train d'évaluer l'utilisation des types intervalle dans notre projet,
et il semble ne pas y avoir de type booléen dans SQL Server 2012.
La comparaison ne portait pas sur les types, mais sur les fonctionnalités.
Il est vrai que le type INTERVAL n'existe pas sous SQL Server.
Cela dit, je trouve ce type épouvantable et il me semble PostGreSQL n'est pas conforme à le norme sur ce point. À me lire :
Le type INTERVAL de SQL et ses dangers
En revanche le booléen est représenté par le type BIT et l'on peut écrire MaColonneBit = true
A +
Frédéric Brouard, alias SQLpro, ARCHITECTE DE DONNÉES, Expert langage SQL
Le site sur les SGBD relationnel et langage SQL : http://sqlpro.developpez.com/
Modélisation de données, conseil, expertise, audit, optimisation, tuning, formation
* * * * * Enseignant CNAM PACA, ISEN Toulon, CESI Aix en Provence * * * * *
Hors ligne
#7 26/03/2013 18:56:59
- SQLpro
- Membre
Re : Comparatif PostGreSQL 9.2 / SQL Server 2012
Je débute en PG, mais on peut faire des transactions DDL ...
Relisez bien ce que j'ai écrit, je parle des transactions dans les routines SQL. Je cite le papier :
[C] Transaction explicites : PostGreSQL ne permet pas de démarrer des transactions explicitement par BEGIN TRANSACTION (ou BEGIN WORK) ni des les terminer (COMMIT, ROLLBACK) dans le code des routines.
Exemple :
CREATE FUNCTION F ()
RETURNS VARCHAR(12)
AS
$code$
BEGIN
create table a (x integer);
insert into a VALUES (1);
SELECT * FROM a;
ROLLBACK TRANSACTION;
end
$code$
LANGUAGE PLPGSQL
SELECT F ()
ERREUR: la requête n'a pas de destination pour les données résultantes
HINT: Si vous voulez annuler les résultats d'un SELECT, utilisez PERFORM à la place.
CONTEXT: fonction PL/pgsql « f », ligne 6 à instruction SQL
********** Erreur **********
État SQL :42601
A +
Dernière modification par SQLpro (26/03/2013 19:03:15)
Frédéric Brouard, alias SQLpro, ARCHITECTE DE DONNÉES, Expert langage SQL
Le site sur les SGBD relationnel et langage SQL : http://sqlpro.developpez.com/
Modélisation de données, conseil, expertise, audit, optimisation, tuning, formation
* * * * * Enseignant CNAM PACA, ISEN Toulon, CESI Aix en Provence * * * * *
Hors ligne
Pages : 1