Champs en cyrillique: différence entre nvarchar et ntext
3 réponses
Michel Couche
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci
doivent être disponibles entre autres en cyrillique.
Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier
pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page
ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs
ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de
collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Information complémentaire:
1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le
champs titre, celui-ci affiche les caractères cyrillique correctement.
2) j'ai vérifié que mon code ASP.net injecte les bons caractères dans les
paramètres de la procédure stockée
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
SQLpro
La collation est enregistrée avec la création de l'objet. Si vous voulez cahnger de collation, il vous faut supprimer la table et la recréer.
A +
On 29 juin, 05:52, "Michel Couche" wrote:
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles- ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce de rnier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la vale ur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon probl ème.
Information complémentaire: 1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le champs titre, celui-ci affiche les caractères cyrillique correctement. 2) j'ai vérifié que mon code ASP.net injecte les bons caractères da ns les paramètres de la procédure stockée
Merci d'avance pour toute aide.
Michel
La collation est enregistrée avec la création de l'objet. Si vous
voulez cahnger de collation, il vous faut supprimer la table et la
recréer.
A +
On 29 juin, 05:52, "Michel Couche" <Cont...@MichelCouche.net> wrote:
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles- ci
doivent être disponibles entre autres en cyrillique.
Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce de rnier
pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page
ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs
ntext mais le champs titre ne contient que des "?". J'ai changé la vale ur de
collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon probl ème.
Information complémentaire:
1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le
champs titre, celui-ci affiche les caractères cyrillique correctement.
2) j'ai vérifié que mon code ASP.net injecte les bons caractères da ns les
paramètres de la procédure stockée
La collation est enregistrée avec la création de l'objet. Si vous voulez cahnger de collation, il vous faut supprimer la table et la recréer.
A +
On 29 juin, 05:52, "Michel Couche" wrote:
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles- ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce de rnier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la vale ur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon probl ème.
Information complémentaire: 1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le champs titre, celui-ci affiche les caractères cyrillique correctement. 2) j'ai vérifié que mon code ASP.net injecte les bons caractères da ns les paramètres de la procédure stockée
Merci d'avance pour toute aide.
Michel
Patrice
Et le paramètre de la procédure stockée est bien en nvarchar également ?
-- Patrice
"Michel Couche" a écrit dans le message de news: eB$
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Information complémentaire: 1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le champs titre, celui-ci affiche les caractères cyrillique correctement. 2) j'ai vérifié que mon code ASP.net injecte les bons caractères dans les paramètres de la procédure stockée
Merci d'avance pour toute aide.
Michel
Et le paramètre de la procédure stockée est bien en nvarchar également ?
--
Patrice
"Michel Couche" <Contact@MichelCouche.net> a écrit dans le message de news:
eB$16MjuHHA.3588@TK2MSFTNGP06.phx.gbl...
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles.
Celles-ci doivent être disponibles entre autres en cyrillique.
Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce
dernier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page
ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs
ntext mais le champs titre ne contient que des "?". J'ai changé la valeur
de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon
problème.
Information complémentaire:
1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le
champs titre, celui-ci affiche les caractères cyrillique correctement.
2) j'ai vérifié que mon code ASP.net injecte les bons caractères dans les
paramètres de la procédure stockée
Et le paramètre de la procédure stockée est bien en nvarchar également ?
-- Patrice
"Michel Couche" a écrit dans le message de news: eB$
Bonjour,
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Information complémentaire: 1) si dans le "SQL Management Studio" je fais un "copier/coller" dans le champs titre, celui-ci affiche les caractères cyrillique correctement. 2) j'ai vérifié que mon code ASP.net injecte les bons caractères dans les paramètres de la procédure stockée
Merci d'avance pour toute aide.
Michel
Pierre Goiffon
Michel Couche wrote:
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Il y a 3 grands critères à prendre en compte : - le codage utilisé entre le client Web et l'application serveur - le codage utilisé pour la connexion entre l'application serveur et le SGBD - la collation sur le SGBD
Puisque vous avez un champ qui est bien récupéré et pas l'autre, si l'on imagine que ces 2 champs sont traités en même temps par l'application serveur (il faudrait que vous le précisiez...), le prb se situerai plus côté serveur. Etes vous assuré que votre application ASP.net envoies bien le bon contenu au sbgd ?
Michel Couche wrote:
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci
doivent être disponibles entre autres en cyrillique.
Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier
pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page
ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs
ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de
collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Il y a 3 grands critères à prendre en compte :
- le codage utilisé entre le client Web et l'application serveur
- le codage utilisé pour la connexion entre l'application serveur et le SGBD
- la collation sur le SGBD
Puisque vous avez un champ qui est bien récupéré et pas l'autre, si l'on
imagine que ces 2 champs sont traités en même temps par l'application
serveur (il faudrait que vous le précisiez...), le prb se situerai plus
côté serveur. Etes vous assuré que votre application ASP.net envoies
bien le bon contenu au sbgd ?
Je travaille sur une application ASP.Net de gestion de nouvelles. Celles-ci doivent être disponibles entre autres en cyrillique. Chaque nouvelle possède un titre et un texte.
J'ai défini le titre en champs "nvarchar" et le texte en "ntext" (ce dernier pourrait excéder les 4000 caractères).
Lorsque j'insère un nouvel enregistrement en cyrillique via une page ASP.net, le texte est inséré avec le bon jeu de caractères dans le champs ntext mais le champs titre ne contient que des "?". J'ai changé la valeur de collation en "Cyrillic_General_BIN" mais cela ne résoud pas mon problème.
Il y a 3 grands critères à prendre en compte : - le codage utilisé entre le client Web et l'application serveur - le codage utilisé pour la connexion entre l'application serveur et le SGBD - la collation sur le SGBD
Puisque vous avez un champ qui est bien récupéré et pas l'autre, si l'on imagine que ces 2 champs sont traités en même temps par l'application serveur (il faudrait que vous le précisiez...), le prb se situerai plus côté serveur. Etes vous assuré que votre application ASP.net envoies bien le bon contenu au sbgd ?