créer un champ nvarchar sans fixer une longueur ?

Le
olivier
Bonjour

Peut-on créer un champ de type nvarchar sans fixer spécifiquement une
longueur ?

actuellement, je fais toujours :

libelle [nchar](200)
mais si je rentre 201 , ca plante.
par contre, je ne peux pas interdire de saisir 201 caractères.

Comment faites-vous ?

merci
olivier
Vidéos High-Tech et Jeu Vidéo
Téléchargements
Vos réponses
Gagnez chaque mois un abonnement Premium avec GNT : Inscrivez-vous !
Trier par : date / pertinence
Fred BROUARD
Le #11867361
olivier a écrit :
Bonjour

Peut-on créer un champ de type nvarchar sans fixer spécifiquement une
longueur ?

actuellement, je fais toujours :

libelle [nchar](200)
mais si je rentre 201 , ca plante.
par contre, je ne peux pas interdire de saisir 201 caractères.

Comment faites-vous ?



nvarchar(max)

C'est une idiotie que de faire des colonnes extensibles à l'infini car
cela oblige à manipuler des Blobs qui sont ni indexables, ni requêtable.
Vous devez fixer une longeur (la plus courte possible) et vous y tebir.
Sachez que beaucoup de données sont normalisées aux niveaux des
longueurs. Ainsi les lignes d'adresse de la lposte ne doivent pas
dépasser 38 caractères.

de plus pourquoi utiliser vous du NATIONAL ? Cela coûte deux fois plus
cher dans les traitements. Seul cas vraiment important d'utilasation du
NATIONAL CHAR/VARCHAR c'est si votre base de données est relatives à une
applications internationale utilisées simultanément (le même base) par
des langues d'alphabets différents. Exemple dans la même base de données
cetaines lignes en cyrilliques, d'autre en arabe, hébreu, latin...)

A +


merci
olivier






--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
Jean BONBEUR
Le #11867351
> Ainsi les lignes d'adresse de la lposte ne doivent pas dépasser 38
caractères.



Curiosité... c'est une information qui vient d'ou ? Saint Quentin ?
Montpellier ?

Cordialement,

Frédéric Didier
Fred BROUARD
Le #11867321
Jean BONBEUR a écrit :
Ainsi les lignes d'adresse de la lposte ne doivent pas dépasser 38
caractères.



Curiosité... c'est une information qui vient d'ou ? Saint Quentin ?
Montpellier ?



Lisez les papiers que j'écris...
http://sqlpro.developpez.com/cours/normes/

Renseignez vous aux bonnes sources !
http://www.laposte.fr/sna/rubrique.php3?id_rubrique‡

A +




Cordialement,

Frédéric Didier






--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
Jean BONBEUR
Le #11867311
Merci pour ces infos, ça impose le respect :)
Fred BROUARD
Le #11867301
Jean BONBEUR a écrit :
Merci pour ces infos, ça impose le respect :)




La plupart des données sont nromalisées. Mais les gens l'ignorent. En
particulier les informaticiens...

Cela me permet de gagner de l'argent en conseil !!!

A +

--
Frédéric BROUARD, MVP SQL Server, expert bases de données et langage SQL
Le site sur le langage SQL et les SGBDR : http://sqlpro.developpez.com
Audit, conseil, expertise, formation, modélisation, tuning, optimisation
*********************** http://www.sqlspot.com *************************
Patrice
Le #11867151
Bonjour,

Généralement c'est l'application cliente qui contraint la saisie (souvent
via une propriété MaxLength qui permet de limiter le nombre de caractères
acceptés dans une zone de saisie).

Il faudrait plutôt poser la question je pense dans un groupe concernant
l'outil de développement utilisé pour l'application cliente.

--
Patrice

"olivier"
Bonjour

Peut-on créer un champ de type nvarchar sans fixer spécifiquement une
longueur ?

actuellement, je fais toujours :

libelle [nchar](200)
mais si je rentre 201 , ca plante.
par contre, je ne peux pas interdire de saisir 201 caractères.

Comment faites-vous ?

merci
olivier



Publicité
Poster une réponse
Anonyme