En effectuant une opération SQL avec un composant ADO de Delphi, j'obtiens le
message "Valeur de caractère non valide pour la spécification". Ma chaîne SQL
vaut "DELETE FROM myTableName WHERE myTableName_GUID =
'{010E1236-3C36-4080-8A46-FBA3E9D30353}'".
La présence ou non des caractères "{" et "}" se trouvant respectivement au
début et à la fin n'est pas la cause du problème.
Précisions :
- la base est SQL Server 2000 et le problème NE SURVIENT PAS sur toutes les
machines où cette opération est effectuée.
- le problème survient lorsque le GUID est spécifié dans une clause WHERE
seulement et pas lorsqu'il figure comme valeur comme dans un INSERT ou un
UPDATE
- le système est Windows server 2003
- version des MDAC = 2.8
- le problème N'APPARAIT PAS sur d'autres machines équipées de MANIERE
IDENTIQUE
- configuration du serveur (Collation = SQL_Latin1_General_CP1_CI_AS /
Edition = Standard Edition / IsClustered = 0 / IsFullTextInstalled = 1 /
IsIntegratedSecurityOnly = 0 / IsSingleUser = 0 / ProductVersion = 8.00.760 /
ProductLevel = SP3)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Philippe [MS]
Peut être ça ?
DELETE FROM myTableName WHERE myTableName_GUID = '{010E1236-3C36-4080-8A46-FBA3E9D30353}' COLLATE database_default"
ou alors avec un CONVERT en uniqueidentifier de la chaine : CONVERT(uniqueidentifier, '{010E1236-3C36-4080-8A46-FBA3E9D30353}') ???
Phil.
"jackfirst72" wrote in message news:
En effectuant une opération SQL avec un composant ADO de Delphi, j'obtiens
le
message "Valeur de caractère non valide pour la spécification". Ma chaîne
SQL
vaut "DELETE FROM myTableName WHERE myTableName_GUID > '{010E1236-3C36-4080-8A46-FBA3E9D30353}'". La présence ou non des caractères "{" et "}" se trouvant respectivement au début et à la fin n'est pas la cause du problème. Précisions : - la base est SQL Server 2000 et le problème NE SURVIENT PAS sur toutes
les
machines où cette opération est effectuée. - le problème survient lorsque le GUID est spécifié dans une clause WHERE seulement et pas lorsqu'il figure comme valeur comme dans un INSERT ou un UPDATE - le système est Windows server 2003 - version des MDAC = 2.8 - le problème N'APPARAIT PAS sur d'autres machines équipées de MANIERE IDENTIQUE - configuration du serveur (Collation = SQL_Latin1_General_CP1_CI_AS / Edition = Standard Edition / IsClustered = 0 / IsFullTextInstalled = 1 / IsIntegratedSecurityOnly = 0 / IsSingleUser = 0 / ProductVersion 8.00.760 / ProductLevel = SP3)
Peut être ça ?
DELETE FROM myTableName
WHERE myTableName_GUID = '{010E1236-3C36-4080-8A46-FBA3E9D30353}' COLLATE
database_default"
ou alors avec un CONVERT en uniqueidentifier de la chaine :
CONVERT(uniqueidentifier, '{010E1236-3C36-4080-8A46-FBA3E9D30353}') ???
Phil.
"jackfirst72" <jackfirst72@discussions.microsoft.com> wrote in message
news:0CBE1A90-231E-4E45-A828-43F9BC6A5FFB@microsoft.com...
En effectuant une opération SQL avec un composant ADO de Delphi, j'obtiens
le
message "Valeur de caractère non valide pour la spécification". Ma chaîne
SQL
vaut "DELETE FROM myTableName WHERE myTableName_GUID > '{010E1236-3C36-4080-8A46-FBA3E9D30353}'".
La présence ou non des caractères "{" et "}" se trouvant respectivement au
début et à la fin n'est pas la cause du problème.
Précisions :
- la base est SQL Server 2000 et le problème NE SURVIENT PAS sur toutes
les
machines où cette opération est effectuée.
- le problème survient lorsque le GUID est spécifié dans une clause WHERE
seulement et pas lorsqu'il figure comme valeur comme dans un INSERT ou un
UPDATE
- le système est Windows server 2003
- version des MDAC = 2.8
- le problème N'APPARAIT PAS sur d'autres machines équipées de MANIERE
IDENTIQUE
- configuration du serveur (Collation = SQL_Latin1_General_CP1_CI_AS /
Edition = Standard Edition / IsClustered = 0 / IsFullTextInstalled = 1 /
IsIntegratedSecurityOnly = 0 / IsSingleUser = 0 / ProductVersion 8.00.760 /
ProductLevel = SP3)
DELETE FROM myTableName WHERE myTableName_GUID = '{010E1236-3C36-4080-8A46-FBA3E9D30353}' COLLATE database_default"
ou alors avec un CONVERT en uniqueidentifier de la chaine : CONVERT(uniqueidentifier, '{010E1236-3C36-4080-8A46-FBA3E9D30353}') ???
Phil.
"jackfirst72" wrote in message news:
En effectuant une opération SQL avec un composant ADO de Delphi, j'obtiens
le
message "Valeur de caractère non valide pour la spécification". Ma chaîne
SQL
vaut "DELETE FROM myTableName WHERE myTableName_GUID > '{010E1236-3C36-4080-8A46-FBA3E9D30353}'". La présence ou non des caractères "{" et "}" se trouvant respectivement au début et à la fin n'est pas la cause du problème. Précisions : - la base est SQL Server 2000 et le problème NE SURVIENT PAS sur toutes
les
machines où cette opération est effectuée. - le problème survient lorsque le GUID est spécifié dans une clause WHERE seulement et pas lorsqu'il figure comme valeur comme dans un INSERT ou un UPDATE - le système est Windows server 2003 - version des MDAC = 2.8 - le problème N'APPARAIT PAS sur d'autres machines équipées de MANIERE IDENTIQUE - configuration du serveur (Collation = SQL_Latin1_General_CP1_CI_AS / Edition = Standard Edition / IsClustered = 0 / IsFullTextInstalled = 1 / IsIntegratedSecurityOnly = 0 / IsSingleUser = 0 / ProductVersion 8.00.760 / ProductLevel = SP3)