OVH Cloud OVH Cloud

WHERE monGUID=???

5 réponses
Avatar
SOW Olivier
Bonjour,

Es ce que quelqu'un connait la syntax correct pour identifer un GUID
par exemple :
SELECT * FROM channel WHERE Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
fonctionne mais
SELECT * FROM channel WHERE Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine donnée
en GUID.
Y'a t'il une syntax exacte ?


SOW Olivier <olivier.sow@alias.fr>
Alias
251 av des Paluds BP1403
ZI des Paluds
13785 AUBAGNE CEDEX
04 42 700 545
04 42 700 546
www.alias.fr

5 réponses

Avatar
Steve Kass
Olivier,

Ainsi qu'il y a plus qu'une chaîne acceptée par SQL Server comme le 2
février 2002,

declare @d datetime
set @d = '20020202'
set @d = '2002-02-02T00:00:00.000

il y a aussi plus qu'une chaîne acceptée comme spécification d'une
valeur uniqueidentifier, avec est sans les {}

Steve Kass
Drew University

SOW Olivier wrote:

Bonjour,

Es ce que quelqu'un connait la syntax correct pour identifer un GUID
par exemple :
SELECT * FROM channel WHERE Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
fonctionne mais
SELECT * FROM channel WHERE Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine donnée
en GUID.
Y'a t'il une syntax exacte ?


SOW Olivier
Alias
251 av des Paluds BP1403
ZI des Paluds
13785 AUBAGNE CEDEX
04 42 700 545
04 42 700 546
www.alias.fr






Avatar
SOW Olivier
j'avais bien compris cela, ma question était plutot, quelle est le mieux ?
qu'es ce qui est le plus optimisé pour SQL SERVER ?



"Steve Kass" a écrit dans le message de
news:%
| Olivier,
|
| Ainsi qu'il y a plus qu'une chaîne acceptée par SQL Server comme le 2
| février 2002,
|
| declare @d datetime
| set @d = '20020202'
| set @d = '2002-02-02T00:00:00.000
|
| il y a aussi plus qu'une chaîne acceptée comme spécification d'une
| valeur uniqueidentifier, avec est sans les {}
|
| Steve Kass
| Drew University
|
| SOW Olivier wrote:
|
| >Bonjour,
| >
| >Es ce que quelqu'un connait la syntax correct pour identifer un GUID
| >par exemple :
| >SELECT * FROM channel WHERE
Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
| >fonctionne mais
| >SELECT * FROM channel WHERE
Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
| >fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine
donnée
| >en GUID.
| >Y'a t'il une syntax exacte ?
| >
| >
| >SOW Olivier
| >Alias
| >251 av des Paluds BP1403
| >ZI des Paluds
| >13785 AUBAGNE CEDEX
| >04 42 700 545
| >04 42 700 546
| >www.alias.fr
| >
| >
| >
| >
|
Avatar
Steve Kass
Olivier,

J'ai verifié le temps nécessaire de faire ~100000 conversions varchar
-> uniqueidentifier avec et sans les '{}', sans trouver une difference.
Dans tous les deux cas, il faut une opération CONVERT, les
uniqueidentifier étant stockés en forme binaire, et les '{}' ne changent
rien, semble-t-il.

Steve

SOW Olivier wrote:

j'avais bien compris cela, ma question était plutot, quelle est le mieux ?
qu'es ce qui est le plus optimisé pour SQL SERVER ?



"Steve Kass" a écrit dans le message de
news:%
| Olivier,
|
| Ainsi qu'il y a plus qu'une chaîne acceptée par SQL Server comme le 2
| février 2002,
|
| declare @d datetime
| set @d = '20020202'
| set @d = '2002-02-02T00:00:00.000
|
| il y a aussi plus qu'une chaîne acceptée comme spécification d'une
| valeur uniqueidentifier, avec est sans les {}
|
| Steve Kass
| Drew University
|
| SOW Olivier wrote:
|
| >Bonjour,
| >
| >Es ce que quelqu'un connait la syntax correct pour identifer un GUID
| >par exemple :
| >SELECT * FROM channel WHERE
Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
| >fonctionne mais
| >SELECT * FROM channel WHERE
Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
| >fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine
donnée
| >en GUID.
| >Y'a t'il une syntax exacte ?
| >
| >
| >SOW Olivier
| >Alias
| >251 av des Paluds BP1403
| >ZI des Paluds
| >13785 AUBAGNE CEDEX
| >04 42 700 545
| >04 42 700 546
| >www.alias.fr
| >
| >
| >
| >
|






Avatar
SOW Olivier
ok, je pensais qu'il existait une forme pour que SQL SERVER le prenne
directement comme un GUID
sous JET il me semble qu'il existe une forme du type {GUID (0000-....-0000)}
Mais si le GUID est stocké sous forme binaire ...

Merci beaucoup.

"Steve Kass" a écrit dans le message de
news:%23kSp0$
| Olivier,
|
| J'ai verifié le temps nécessaire de faire ~100000 conversions varchar
| -> uniqueidentifier avec et sans les '{}', sans trouver une difference.
| Dans tous les deux cas, il faut une opération CONVERT, les
| uniqueidentifier étant stockés en forme binaire, et les '{}' ne changent
| rien, semble-t-il.
|
| Steve
|
| SOW Olivier wrote:
|
| >j'avais bien compris cela, ma question était plutot, quelle est le mieux
?
| >qu'es ce qui est le plus optimisé pour SQL SERVER ?
| >
| >
| >
| >"Steve Kass" a écrit dans le message de
| >news:%
| >| Olivier,
| >|
| >| Ainsi qu'il y a plus qu'une chaîne acceptée par SQL Server comme le 2
| >| février 2002,
| >|
| >| declare @d datetime
| >| set @d = '20020202'
| >| set @d = '2002-02-02T00:00:00.000
| >|
| >| il y a aussi plus qu'une chaîne acceptée comme spécification d'une
| >| valeur uniqueidentifier, avec est sans les {}
| >|
| >| Steve Kass
| >| Drew University
| >|
| >| SOW Olivier wrote:
| >|
| >| >Bonjour,
| >| >
| >| >Es ce que quelqu'un connait la syntax correct pour identifer un GUID
| >| >par exemple :
| >| >SELECT * FROM channel WHERE
| >Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
| >| >fonctionne mais
| >| >SELECT * FROM channel WHERE
| >Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
| >| >fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine
| >donnée
| >| >en GUID.
| >| >Y'a t'il une syntax exacte ?
| >| >
| >| >
| >| >SOW Olivier
| >| >Alias
| >| >251 av des Paluds BP1403
| >| >ZI des Paluds
| >| >13785 AUBAGNE CEDEX
| >| >04 42 700 545
| >| >04 42 700 546
| >| >www.alias.fr
| >| >
| >| >
| >| >
| >| >
| >|
| >
| >
| >
| >
|
Avatar
Steve Kass
Olivier,

Il y a aussi le syntaxe ODBC {guid
'512728ED-17A8-4D40-95D9-5EAFE4E63158'} ou {guid
'{512728ED-17A8-4D40-95D9-5EAFE4E63158}'}, qui a la type
uniqueidentifier, mais il n'est pas plus efficace, selon quelques
essais. La conversion en binaire est toujours nécessaire.

SK

SOW Olivier wrote:

ok, je pensais qu'il existait une forme pour que SQL SERVER le prenne
directement comme un GUID
sous JET il me semble qu'il existe une forme du type {GUID (0000-....-0000)}
Mais si le GUID est stocké sous forme binaire ...

Merci beaucoup.

"Steve Kass" a écrit dans le message de
news:%23kSp0$
| Olivier,
|
| J'ai verifié le temps nécessaire de faire ~100000 conversions varchar
| -> uniqueidentifier avec et sans les '{}', sans trouver une difference.
| Dans tous les deux cas, il faut une opération CONVERT, les
| uniqueidentifier étant stockés en forme binaire, et les '{}' ne changent
| rien, semble-t-il.
|
| Steve
|
| SOW Olivier wrote:
|
| >j'avais bien compris cela, ma question était plutot, quelle est le mieux
?
| >qu'es ce qui est le plus optimisé pour SQL SERVER ?
| >
| >
| >
| >"Steve Kass" a écrit dans le message de
| >news:%
| >| Olivier,
| >|
| >| Ainsi qu'il y a plus qu'une chaîne acceptée par SQL Server comme le 2
| >| février 2002,
| >|
| >| declare @d datetime
| >| set @d = '20020202'
| >| set @d = '2002-02-02T00:00:00.000
| >|
| >| il y a aussi plus qu'une chaîne acceptée comme spécification d'une
| >| valeur uniqueidentifier, avec est sans les {}
| >|
| >| Steve Kass
| >| Drew University
| >|
| >| SOW Olivier wrote:
| >|
| >| >Bonjour,
| >| >
| >| >Es ce que quelqu'un connait la syntax correct pour identifer un GUID
| >| >par exemple :
| >| >SELECT * FROM channel WHERE
| >Chnl_ID='2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3'
| >| >fonctionne mais
| >| >SELECT * FROM channel WHERE
| >Chnl_ID='{2922F7B1-BEB0-4E8B-B40E-E64F6BED16E3}'
| >| >fonctionne aussi et j'ai l'impression que SQL SERVER caste la chaine
| >donnée
| >| >en GUID.
| >| >Y'a t'il une syntax exacte ?
| >| >
| >| >
| >| >SOW Olivier
| >| >Alias
| >| >251 av des Paluds BP1403
| >| >ZI des Paluds
| >| >13785 AUBAGNE CEDEX
| >| >04 42 700 545
| >| >04 42 700 546
| >| >www.alias.fr
| >| >
| >| >
| >| >
| >| >
| >|
| >
| >
| >
| >
|