Publicité
+ Répondre à la discussion Actualité déjà publiée
Page 1 sur 3 123 DernièreDernière
Affichage des résultats 1 à 20 sur 52
  1. #1
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut SQL Server 2008 : les nouveautés . . .

    La prochaine version de MS SQL Server sortira en 2008. Son nom de code est katmai.
    Parmi les nouveautés :
    1) types SQL date et time (date, time, datetime2, datetimeoffset) avec rajout de la semaine iso et gestion des fuseaux horaires
    2) compression des données pour le Data Warehouse
    3) ordre SQL MERGE (INSERT et UPDATE combiné)
    4) possibilité d'implanter des règles de securité (par exemple respect d'une police de nommage - à l'instar des GPO de Windows)
    5) module de géolocalisation spatial (SIG)
    6) creation possible de nouveaux roles de serveur
    7) nouveau type "hiérarchie" (arbres)
    8) nouveau type filestream (proche du datalink de la norme SQL, permettant de considérer un fichier comme une donnée d'une colonne d'une table
    9) ajout du type table
    10) ajout du paramétrage de nom de table pour les requêtes (exemple : SELECT * FROM @MaVariableTable)
    11) sauvegardes compressées
    12) possibilité de definir des groupes pour gérer les ressources physiques, par exemple pour avantager les requêtes de production au détriment des requêtes d'admin (Resource Gouvernor)
    13) intégration du langage d'interrogation LINQ (Language Integrated Query) permettant de faire des requêtes d'interrogation évoluées
    14) Ajout du GROUPING SETS pour les fonctions OLAP des bases OLTP
    15) tracabilité des données (accès asynchrone au données modifiées dans les tables)
    16) Intégration plus forte avec Office
    17) Nombreuses avancées pour BI.
    Et encore bien d'autres choses !

    Annonce MS :
    http://www.microsoft.com/presspass/p...9KatmaiPR.mspx

    Site MS du produit :
    http://www.microsoft.com/sql/prodinf...n/default.mspx
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  2. #2
    En attente de confirmation mail
    Inscrit en
    octobre 2002
    Messages
    347
    Détails du profil
    Informations forums :
    Inscription : octobre 2002
    Messages : 347
    Points : 94
    Points
    94

    Par défaut ok

    les points 3,7,8 et 9 sont de grandes avancées.
    ça va facilité la vie de bcp de programmeur.

    ces fonctionnalités existent chez les autres SGBD concurrents ?

  3. #3
    Invité de passage
    Inscrit en
    juin 2005
    Messages
    2
    Détails du profil
    Informations forums :
    Inscription : juin 2005
    Messages : 2
    Points : 2
    Points
    2

    Par défaut MsSQL 2008

    Bonjour,
    Perso j'attends avec impatience l'option 10, que de temps passé avec les Sp_ExecuteSQL pour quelque chose d'approchant.
    Merci pour l'info et longue vie au Forum.
    Alain

  4. #4
    Membre du Club
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    mars 2002
    Messages
    54
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Chef de projet en SSII
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : mars 2002
    Messages : 54
    Points : 41
    Points
    41

    Par défaut

    C'est sûr que de nouveaux types de données évolués, c'est tjs appréciables. Mais je suis surtout curieux de découvrir Link, en relation avec C# 3.0.

    Par contre, je ne comprend pas bien ce qu'un SIG vient faire dans un SGBDR.

  5. #5
    Membre confirmé
    Inscrit en
    décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations forums :
    Inscription : décembre 2006
    Messages : 480
    Points : 296
    Points
    296

    Par défaut

    Le point 8) manquait cruellement à SQL Server! Content de voir qu'ils comblent cette lacune!

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    Pour le SIG, c'est dans la norme SQL...

    ISO/IEC 13249:2003 Part 3: Spatial
    ISO/IEC 13249-3:2003:
    • introduces the Spatial part of ISO/IEC 13249 (all parts);
    • gives the references necessary for ISO/IEC 13249-3:2003;
    • defines notations and conventions specific to ISO/IEC 13249-3:2003;
    • defines concepts specific to ISO/IEC 13249-3:2003;
    • defines spatial user-defined types and their associated routines.
    The spatial user-defined types defined in ISO/IEC 13249-3:2003 adhere to the following.
    • A spatial user-defined type is generic to spatial data handling. It addresses the need to store, manage and retrieve information based on aspects of spatial data such as geometry, location and topology.
    • A spatial user-defined type does not redefine the database language SQL directly or in combination with another spatial data type.
    Implementations of ISO/IEC 13249-3:2003 may exist in environments that also support geographic information, decision support, data mining and data warehousing systems.
    Application areas addressed by implementations of ISO/IEC 13249-3:2003 include, but are not restricted to, automated mapping, desktop mapping, facilities management, geoengineering, graphics, multimedia and resource management applications.
    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  7. #7
    Futur Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    mars 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : mars 2006
    Messages : 88
    Points : 16
    Points
    16

    Par défaut

    La clause LIMIT sera-t-elle ajoutée cette fois-ci ou non ?

  8. #8
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    Aucun intéret. Cette clause n'existe pas en SQL et relève de l'idiotie pure car anti relationnelle. De plus SQL Server fait du TOP qui est l'équivalent (et pas franchement mieux !).

    En revanche la norme SQL propose les fonctions de fenêtrage qui réponde a ce genre de problématique (et à bien d'autres d'ailleurs) et sont implémentées depuis la version 2005.

    Pour un exemple de ces fonctions, lire l'article que j'ai écrit à ce sujet :
    http://sqlpro.developpez.com/SQL_Server_2K5/N1.php
    1.7 Fonctions de classement et d'énumération (norme SQL:2003) :

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  9. #9
    Futur Membre du Club
    Profil pro
    Webmaster
    Inscrit en
    mars 2006
    Messages
    88
    Détails du profil
    Informations personnelles :
    Âge : 26
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Webmaster

    Informations forums :
    Inscription : mars 2006
    Messages : 88
    Points : 16
    Points
    16

    Par défaut

    Aucun intérêt? Je trouve un certain intérêt à écrire 10 caractères de plus plutôt que 3 lignes de plus pour limiter mon jeu de résultats retourné. Après, chacun son truc.

  10. #10
    Rédacteur

    Avatar de WOLO Laurent
    Homme Profil pro Laurent WOLO
    Architecte de base de données
    Inscrit en
    mars 2003
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Nom : Homme Laurent WOLO
    Âge : 37
    Localisation : Congo-Brazzaville

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : Finance

    Informations forums :
    Inscription : mars 2003
    Messages : 2 725
    Points : 4 027
    Points
    4 027

    Par défaut

    En complement, vous avez :

    18-L'encryption de la totalité de la base de données
    19-L'encryption des sauvegardes
    20-L'audit de la sécurité pour la protection des données
    Code :
    1
    2
    3
     
    AUDIT UPDATE(Salary) ON Employee TO MyAuditFolder WHERE Salary>200000
    AUDIT LOGON TO MyAuditFolder
    21-Fonctionalités de synchronisations de données.
    ...

    Découvrez la FAQ de MS SQL Server.
    La chance accorde ses faveurs aux esprits avertis !

  11. #11
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    A propos de LIMIT :
    Aucun intérêt? Je trouve un certain intérêt à écrire 10 caractères de plus plutôt que 3 lignes de plus pour limiter mon jeu de résultats retourné. Après, chacun son truc.
    Aucun intérêt tout simplement par ce que les opérateurs TOP ou LIMIT sont anti relationnels et conduisent à des erreurs graves que des développeurs à courte vue sont incapable de voir !

    Démonstration :
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
    120
    121
    122
    123
    124
    125
    126
    127
    128
    129
    130
    131
    132
    133
    134
    135
    136
    137
    138
    139
    140
    141
    142
    143
    144
    145
    146
    147
    148
    149
    150
    151
    152
    153
    154
    155
    156
    157
    158
    159
    160
     
    CREATE TABLE T_CLIENT
    (CLI_ID int NOT NULL ,
     TIT_CODE char (8) ,
     CLI_NOM char (32) ,
     CLI_PRENOM varchar (25) ,
     CLI_ENSEIGNE varchar (100))
     
     
    INSERT INTO T_CLIENT VALUES (1, 'M.', 'DUPONT', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (2, 'M.', 'MARTIN', 'Marc' , 'Transports MARTIN & fils')
    INSERT INTO T_CLIENT VALUES (3, 'M.', 'BOUVIER', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (4, 'M.', 'DUBOIS', 'Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (5, 'M.', 'DREYFUS', 'Jean' , NULL)
    INSERT INTO T_CLIENT VALUES (6, 'M.', 'FAURE', 'Alain' , 'Boulangerie du marché')
    INSERT INTO T_CLIENT VALUES (7, 'M.', 'LACOMBE', 'Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (8, 'Melle.', 'DUHAMEL', 'Evelyne' , NULL)
    INSERT INTO T_CLIENT VALUES (9, 'Mme.', 'BOYER', 'Martine' , NULL)
    INSERT INTO T_CLIENT VALUES (10, 'M.', 'MARTIN', 'Martin' , 'HERMAREX IMPORT_EXPORT')
    INSERT INTO T_CLIENT VALUES (11, 'M.', 'PAUL', 'Marcel' , 'Cie Internationale des Machines Electromécaniques')
    INSERT INTO T_CLIENT VALUES (12, 'M.', 'DUVAL', 'Arsène' , NULL)
    INSERT INTO T_CLIENT VALUES (13, 'M.', 'PHILIPPE', 'André' , NULL)
    INSERT INTO T_CLIENT VALUES (14, 'M.', 'PIERRELAYE', 'Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (15, 'Melle.', 'DAUMIER', 'Amélie' , NULL)
    INSERT INTO T_CLIENT VALUES (16, 'M.', 'CHABAUD', 'Daniel' , NULL)
    INSERT INTO T_CLIENT VALUES (17, 'M.', 'BAILLY', 'Jean-François' , 'Entreprise DUPONT CHAUFFAGE')
    INSERT INTO T_CLIENT VALUES (18, 'M.', 'FAYOLLE', 'Olivier' , NULL)
    INSERT INTO T_CLIENT VALUES (19, 'M.', 'COCINO', 'Gérard' , NULL)
    INSERT INTO T_CLIENT VALUES (20, 'M.', 'FRANQUINET', 'Florent' , NULL)
    INSERT INTO T_CLIENT VALUES (21, 'M.', 'MALATERRE', 'Arnaud' , NULL)
    INSERT INTO T_CLIENT VALUES (22, 'M.', 'MEDARD', 'Jacques' , NULL)
    INSERT INTO T_CLIENT VALUES (23, 'M.', 'AUZENAT', 'Michel' , NULL)
    INSERT INTO T_CLIENT VALUES (24, 'M.', 'CHTCHEPINE', 'Dominique' , 'HOTEL *** DE LA GARE')
    INSERT INTO T_CLIENT VALUES (25, 'M.', 'LE GUILLARD', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (26, 'M.', 'GARREAU', 'Paul' , 'IBM Corp.')
    INSERT INTO T_CLIENT VALUES (27, 'M.', 'LECUYER', 'Lionel' , NULL)
    INSERT INTO T_CLIENT VALUES (28, 'M.', 'PRA-LETTRY', 'Emmanuel' , NULL)
    INSERT INTO T_CLIENT VALUES (29, 'M.', 'SILLET', 'Jacques' , NULL)
    INSERT INTO T_CLIENT VALUES (30, 'M.', 'TROLLAT', 'Hervé' , NULL)
    INSERT INTO T_CLIENT VALUES (31, 'M.', 'BOUCHET', 'Michel' , NULL)
    INSERT INTO T_CLIENT VALUES (32, 'M.', 'LEBAILLIF', 'Christian' , NULL)
    INSERT INTO T_CLIENT VALUES (33, 'M.', 'DU HAUT CILLY', 'Guy' , NULL)
    INSERT INTO T_CLIENT VALUES (34, 'Mme.', 'GALLACIER', 'Noëlle' , 'Transports GALLACIER')
    INSERT INTO T_CLIENT VALUES (35, 'M.', 'PICOT', 'Dominique' , NULL)
    INSERT INTO T_CLIENT VALUES (36, 'M.', 'BEAUNEE', 'Pierre' , NULL)
    INSERT INTO T_CLIENT VALUES (37, 'M.', 'VERNET', 'Daniel' , NULL)
    INSERT INTO T_CLIENT VALUES (38, 'M.', 'ALBERT', 'Christian' , NULL)
    INSERT INTO T_CLIENT VALUES (39, 'Mme.', 'HESS', 'Lucette' , NULL)
    INSERT INTO T_CLIENT VALUES (40, 'M.', 'CHATON', 'Gérard' , NULL)
    INSERT INTO T_CLIENT VALUES (41, 'M.', 'PLATONOFF', 'Philippe' , NULL)
    INSERT INTO T_CLIENT VALUES (42, 'Mme.', 'LETERRIER', 'Monique' , 'SA AROMAX ENTREVONT')
    INSERT INTO T_CLIENT VALUES (43, 'M.', 'MONTEIL', 'Jean' , NULL)
    INSERT INTO T_CLIENT VALUES (44, 'M.', 'SPITHAKIS', 'Jean-Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (45, 'M.', 'ORELL', 'Olivier' , NULL)
    INSERT INTO T_CLIENT VALUES (46, 'Mme.', 'MARTINET', 'Carmen' , NULL)
    INSERT INTO T_CLIENT VALUES (47, 'M.', 'RAY', 'Yannick' , NULL)
    INSERT INTO T_CLIENT VALUES (48, 'M.', 'TARSAC', 'René' , NULL)
    INSERT INTO T_CLIENT VALUES (49, 'M.', 'COULOMB', 'Renaud' , 'Cabinet COULOMN et CALEMANT')
    INSERT INTO T_CLIENT VALUES (50, 'M.', 'SAVY', 'Jean-Claude' , 'Etude et conseil SAVY frères')
    INSERT INTO T_CLIENT VALUES (51, 'Mme.', 'DAVID', 'Jacqueline' , NULL)
    INSERT INTO T_CLIENT VALUES (52, 'M.', 'FORGEOT', 'Jean-Bernard' , NULL)
    INSERT INTO T_CLIENT VALUES (53, 'M.', 'BERGER', 'Jean-Pierre' , NULL)
    INSERT INTO T_CLIENT VALUES (54, 'M.', 'DOUBLET', 'Thierry' , NULL)
    INSERT INTO T_CLIENT VALUES (55, 'M.', 'MATHIEU', 'Gérard' , NULL)
    INSERT INTO T_CLIENT VALUES (56, 'Mme.', 'MOURGUES', 'Jacqueline' , NULL)
    INSERT INTO T_CLIENT VALUES (57, 'M.', 'PIERROT', 'Robert' , NULL)
    INSERT INTO T_CLIENT VALUES (58, 'M.', 'FRANQUEBALME', 'Daniel' , 'SA DUBOIS-MORISSE')
    INSERT INTO T_CLIENT VALUES (59, 'Mme.', 'ZAMPIERO', 'Annick' , NULL)
    INSERT INTO T_CLIENT VALUES (60, 'M.', 'PASCOT', 'Vincent' , NULL)
    INSERT INTO T_CLIENT VALUES (61, 'M.', 'MECHRI', 'Pierre' , NULL)
    INSERT INTO T_CLIENT VALUES (62, 'M.', 'THIERY', 'Fathy' , NULL)
    INSERT INTO T_CLIENT VALUES (63, 'Mme.', 'ROURE', 'Marie-Louise' , NULL)
    INSERT INTO T_CLIENT VALUES (64, 'M.', 'VILLE', 'Jean-Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (65, 'M.', 'NOCENTINI', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (66, 'M.', 'LAYANI', 'Lionel' , 'Restaurant Les Près d''Amélie')
    INSERT INTO T_CLIENT VALUES (67, 'M.', 'RECHUL', 'Jacques' , NULL)
    INSERT INTO T_CLIENT VALUES (68, 'Mme.', 'DE CONINCK', 'Patricia' , NULL)
    INSERT INTO T_CLIENT VALUES (69, 'M.', 'LEI', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (70, 'M.', 'MICHEL', 'Fernand' , 'HOTEL DE LA POSTE')
    INSERT INTO T_CLIENT VALUES (71, 'M.', 'BOURA', 'André' , 'CAFE DES SPORTS')
    INSERT INTO T_CLIENT VALUES (72, 'M.', 'CARDONA', 'Philippe' , NULL)
    INSERT INTO T_CLIENT VALUES (73, 'M.', 'THOMASSE', 'Jean-Claude' , NULL)
    INSERT INTO T_CLIENT VALUES (74, 'Mme.', 'MOURIES', 'Nathalie' , NULL)
    INSERT INTO T_CLIENT VALUES (75, 'M.', 'MARTIN', 'Jean-Pierre' , NULL)
    INSERT INTO T_CLIENT VALUES (76, 'M.', 'BENZAQUI', 'Joël' , NULL)
    INSERT INTO T_CLIENT VALUES (77, 'M.', 'ROUSSILLON', 'Alain' , NULL)
    INSERT INTO T_CLIENT VALUES (78, 'M.', 'FARGETTON', 'Denis' , NULL)
    INSERT INTO T_CLIENT VALUES (79, 'M.', 'LEPERCQ', 'Jean-Claude' , NULL)
    INSERT INTO T_CLIENT VALUES (80, 'M.', 'OLIVIA', 'Hubert' , 'La Table de Méditérranée (restaurant)')
    INSERT INTO T_CLIENT VALUES (81, 'M.', 'CASTAREDE', 'Jean-Jacques' , NULL)
    INSERT INTO T_CLIENT VALUES (82, 'M.', 'LEOTARD', 'Jean-Paul' , NULL)
    INSERT INTO T_CLIENT VALUES (83, 'Mme.', 'LALANDE', 'Colette' , NULL)
    INSERT INTO T_CLIENT VALUES (84, 'M.', 'BAVEREL', 'Frédéric' , NULL)
    INSERT INTO T_CLIENT VALUES (85, 'M.', 'NOEL', 'Régis' , NULL)
    INSERT INTO T_CLIENT VALUES (86, 'M.', 'THIRIOT', 'Jacky' , NULL)
    INSERT INTO T_CLIENT VALUES (87, 'M.', 'BERTRAND', 'Christophe' , NULL)
    INSERT INTO T_CLIENT VALUES (88, 'M.', 'BACQUE', 'Michel' , 'GARAGE DU CENTRE')
    INSERT INTO T_CLIENT VALUES (89, 'M.', 'COUASSE', 'François' , 'SA IMPEX internatonal')
    INSERT INTO T_CLIENT VALUES (90, 'M.', 'JOLY', 'Christophe' , NULL)
    INSERT INTO T_CLIENT VALUES (91, 'M.', 'BENATTAR', 'Pierre' , NULL)
    INSERT INTO T_CLIENT VALUES (92, 'Mme.', 'PARIS', 'Michèle' , NULL)
    INSERT INTO T_CLIENT VALUES (93, 'Mme.', 'LEAL', 'Jany' , NULL)
    INSERT INTO T_CLIENT VALUES (94, 'M.', 'BENATTAR', 'Bernard' , NULL)
    INSERT INTO T_CLIENT VALUES (95, 'M.', 'AIACH', 'Alexandre' , NULL)
    INSERT INTO T_CLIENT VALUES (96, 'M.', 'GAL', 'Fabrice' , NULL)
    INSERT INTO T_CLIENT VALUES (97, 'Mme.', 'CHAMBON', 'Edith' , NULL)
    INSERT INTO T_CLIENT VALUES (98, 'M.', 'DUQUESNAY', 'Jacques' , NULL)
    INSERT INTO T_CLIENT VALUES (99, 'M.', 'CHEVALLIER-CHANTEPIE', 'Yanis' , NULL)
    INSERT INTO T_CLIENT VALUES (100, 'M.', 'JEAN', 'Henri' , 'Ambulances Tour Eiffel')
    INSERT INTO T_CLIENT VALUES (101, 'M.', 'DARBOIS', 'Patrick' , NULL)
     
    SELECT COUNT(*) N FROM T_CLIENT
     
    N           
    ----------- 
    101
     
    SELECT TOP 1 CLI_ID, CLI_NOM
    FROM   T_CLIENT
    ORDER  BY LEN(CLI_NOM) 
     
    CLI_ID      CLI_NOM                          
    ----------- -------------------------------- 
    47          RAY 
     
    SELECT TOP 1 PERCENT  CLI_ID, CLI_NOM
    FROM   T_CLIENT
    ORDER  BY LEN(CLI_NOM) 
     
    CLI_ID      CLI_NOM                          
    ----------- -------------------------------- 
    47          RAY                             
    69          LEI 
     
    -- 1% de 101 = 2 !!! Fabuleux...
     
    SELECT TOP 1 PERCENT WITH TIES  CLI_ID, CLI_NOM
    FROM   T_CLIENT
    ORDER  BY LEN(CLI_NOM) 
     
    CLI_ID      CLI_NOM                          
    ----------- -------------------------------- 
    47          RAY                             
    69          LEI                             
    96          GAL  
     
    -- 1% de 101 = 3 avec la queue !
     
    SELECT  CLI_ID, CLI_NOM, LEN(CLI_NOM) AS L
    FROM   T_CLIENT
    ORDER BY L ASC
     
    CLI_ID      CLI_NOM                          L           
    ----------- -------------------------------- ----------- 
    47          RAY                              3
    69          LEI                              3
    96          GAL                              3
    100         JEAN                             4
    85          NOEL                             4
    ...
    la bonne réponse dans tous les cas doit être 3 lignes, car il n'y a aucune raison que la requête Top 1 retourne Ray en non pas LEI ou GAL... Depuis quand un SGBDR choisit-il lui même les données qu'il désire renvoyer à l'utilisateur ????

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  12. #12
    Membre régulier
    Inscrit en
    avril 2002
    Messages
    182
    Détails du profil
    Informations forums :
    Inscription : avril 2002
    Messages : 182
    Points : 76
    Points
    76

    Par défaut

    Y'a t'il des améliorations au niveau des performances du moteur de requetes ?
    Ou ca reste à peu prés le meme que le 2000 et 2005 ?

  13. #13
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    Pas de gros changement du moteur relationnel sauf pour les ajouts au niveau SQL. Donc pas de différence sensible de comportement à priori !

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  14. #14
    Membre expérimenté Avatar de KibitO
    Homme Profil pro Grégory
    Développeur Web
    Inscrit en
    septembre 2004
    Messages
    590
    Détails du profil
    Informations personnelles :
    Nom : Homme Grégory
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : septembre 2004
    Messages : 590
    Points : 516
    Points
    516

    Par défaut

    Je suis bluffé par cette nouvelle version

  15. #15
    CUCARACHA
    Invité(e)

    Par défaut Problème téléchargemement SQL Server 2008

    Salut,

    J'ai téléchargé les 4 disques ISO de SQL Server 2008. Ils sont notés 1/4...4/4.
    J'ai lancé l'installation et, ô surprise, le setup me demande un 5ème disque...

    Si l'un d'entre vous à une idée de la raison de cet échec d'installation, je suis preneur...

    @+

    Laurent

  16. #16
    Membre expérimenté Avatar de KibitO
    Homme Profil pro Grégory
    Développeur Web
    Inscrit en
    septembre 2004
    Messages
    590
    Détails du profil
    Informations personnelles :
    Nom : Homme Grégory
    Âge : 32
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : septembre 2004
    Messages : 590
    Points : 516
    Points
    516

    Par défaut

    Peut-être y a t-il un 5e CD, comme pour les versions SBS Premium..

  17. #17
    Membre confirmé
    Inscrit en
    décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations forums :
    Inscription : décembre 2006
    Messages : 480
    Points : 296
    Points
    296

    Par défaut

    Citation Envoyé par SQLpro Voir le message
    A propos de LIMIT :


    Aucun intérêt tout simplement par ce que les opérateurs TOP ou LIMIT sont anti relationnels et conduisent à des erreurs graves que des développeurs à courte vue sont incapable de voir !

    Démonstration :

    la bonne réponse dans tous les cas doit être 3 lignes, car il n'y a aucune raison que la requête Top 1 retourne Ray en non pas LEI ou GAL... Depuis quand un SGBDR choisit-il lui même les données qu'il désire renvoyer à l'utilisateur ????

    en fait tu as raison mais je trouve ton exemple peu pertinent. Le TOP peut être très utile et ne doit pas être "Eviter à tout prix" comme tu le prétends.

    En revanche il faut en connaître les limites, une bonne règle de gestion pour éviter les conflits dont tu faits part est d'autoriser les TOP uniquement sur des ORDER BY sur des champs uniques de type numérique. Alors tu es sûr de na jamais avoir de problème...

  18. #18
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    Pourquoi utiliser TOP alors que la norme SQL à résolu le probléme avec les fonctions de fenêtrage comme RANK, DENSE_RANK et ROW_NUMBER ?????
    C'est comme si vous disiez, je préfère arrêter ma voiture ou je pense que c'est nécessaire à un carrefour, car je ne voit pas pourquoi je respecterais les feux rouge...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

  19. #19
    Membre confirmé
    Inscrit en
    décembre 2006
    Messages
    480
    Détails du profil
    Informations personnelles :
    Âge : 33

    Informations forums :
    Inscription : décembre 2006
    Messages : 480
    Points : 296
    Points
    296

    Par défaut

    Oui mais pour les environnements de PROD compatible SQL Server 2000 c'est mort... alors que le TOP fonctionne.

  20. #20
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro Frédéric BROUARD
    Expert SGBDR & SQL
    Inscrit en
    mai 2002
    Messages
    13 359
    Détails du profil
    Informations personnelles :
    Nom : Homme Frédéric BROUARD
    Localisation : France

    Informations professionnelles :
    Activité : Expert SGBDR & SQL
    Secteur : Conseil

    Informations forums :
    Inscription : mai 2002
    Messages : 13 359
    Points : 27 456
    Points
    27 456

    Par défaut

    Il existe d'autres possibilité que le TOP pour ce faire et ces possibilités là respectent les opérations ensemblistes.
    Par exemple une auto non équi jointure avec comptage.

    Le problème vient du fait que la plupart des dévelopeurs sont ignare en matière de requêtes SQL !

    Donc à de très rares exceptions près, le TOP ne sert qu'à générer des requêtes souvent fausses !

    A +

    PS : pour l'exception, voir l'étude que j'ai faite sur la médiane et qui figure sur mon site corporate d'entreprise :
    http://www.sqlspot.com/Calcul-de-la-mediane-en-SQL.html
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Blog SQL, SQL Server, modélisation données : http://blog.developpez.com/sqlpro
    http://www.sqlspot.com : modélisation, conseils, audit, optimisation, formation
    * * * * * Enseignant CNAM PACA - ISEN Toulon - CESI Aix en Provence * * * * *

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •