IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Développement SQL Server Discussion :

Création de table


Sujet :

Développement SQL Server

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2016
    Messages : 4
    Points : 1
    Points
    1
    Par défaut Création de table
    Bonjour,
    Je me permets de solliciter votre aide au sujet d’un problème que je rencontre sur SQL SERVER 2014 (avec Visual Studio).
    Je souhaite exporter une table de mon ERP (2 colonnes, varchar 30) dans une nouvelle table (même format) via une requête de création de table dans Visual Studio.
    Le résultat fonctionne sauf que les données de ma nouvelle table ne comprennent que 15 caractères maxi alors que les colonnes sont bien en varchar 30 caractères.
    Je n’arrive pas à comprendre pourquoi les données entières n’apparaissent pas quand elles dépassent 15 caractères.

    D’avance, je vous remercie de votre aide.

    Cordialement.

  2. #2
    Expert Oracle confirmé

    Homme Profil pro
    Consultant Big Data
    Inscrit en
    Mars 2003
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Consultant Big Data
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2003
    Messages : 448
    Points : 926
    Points
    926
    Par défaut
    Bonjour,

    Ton ERP utilise aussi SQL Server comme base de données ?

    Pour ma part, je me demande si tu ne serais pas en train de charger des données au format Unicode dans ta table SQL Server ?

    Car si utilise de l'Unicode en UTF-16, chaque caractère occupe 2 octets, et non pas 1.

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2016
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Je vous remercie pour votre rapidité.
    Non. En fait, mon ERP fonctionne sur du my SQL.

    Je pense que votre avis est le bon.
    Comment puis-alors charger les données autrement qu'en format Unicode ?

    Je vous remercie encore.
    Cordialement.

  4. #4
    Expert Oracle confirmé

    Homme Profil pro
    Consultant Big Data
    Inscrit en
    Mars 2003
    Messages
    448
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Consultant Big Data
    Secteur : Conseil

    Informations forums :
    Inscription : Mars 2003
    Messages : 448
    Points : 926
    Points
    926
    Par défaut
    Si vos données sont en Unicode, moi j'utiliserai alors le type de données NVARCHAR, au lieu de VARCHAR, sous SQL Server pour préserver les données.

    Sinon pour passer de données Unicode en non Unicode, on utilise des fonctions de cast.

    Difficile de vous en dire plus si vous ne nous dites pas par quelle manière vous chargez vos données depuis MySQL sous SQL Server ?

    Vous utilisez un ETL ?
    Vous avez développé des scripts ?
    Autres ?

  5. #5
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2016
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    J'utilise une liaison ODBC pour accéder aux tables de l'ERP.
    je suis passé sous requêteur my sql il y a quelques semaines seulement.
    Sous l'ancien mode (ISAM ou quelque chose comme ça), ma requête sous sql server fonctionnait parfaitement.
    Je pense effectivement que les nouvelles tables sous MySQL n'ont pas été crées sous le même format, d'où mon problème.
    J'utilise du [nvarchar, 30, NULL] pour la création de ma table (et non varchar comme indiqué plus haut par erreur).
    Malgré cela, les données sont limitées à 15 caractères et non 30.
    Le paradoxe, c'est que lorsque je consulte ma table originale de l'ERP dans Visual studio (table source), toutes les données apparaissent bien. c'est donc la requête de création de table qui me pose souci.

    Les tests sous Access sont plus concluant mais ce dernier est moins exigeant en format "texte".

    Cordialement.

  6. #6
    Modérateur
    Avatar de al1_24
    Homme Profil pro
    Retraité
    Inscrit en
    Mai 2002
    Messages
    9 080
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France, Val de Marne (Île de France)

    Informations professionnelles :
    Activité : Retraité
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2002
    Messages : 9 080
    Points : 30 803
    Points
    30 803
    Par défaut
    Citation Envoyé par JJ-BOY Voir le message
    J'utilise du [nvarchar, 30, NULL] pour la création de ma table (...) Malgré cela, les données sont limitées à 15 caractères et non 30.
    Les colonnes sont déclarées sur 30 octets donc 15 caractères
    Modérateur Langage SQL
    Règles du forum Langage SQL à lire par tous, N'hésitez pas à consulter les cours SQL
    N'oubliez pas le bouton et pensez aux balises
    [code]
    Si une réponse vous a aidé à résoudre votre problème, n'oubliez pas de voter pour elle en cliquant sur
    Aide-toi et le forum t'aidera : Un problème exposé sans mentionner les tentatives de résolution infructueuses peut laisser supposer que le posteur attend qu'on fasse son travail à sa place... et ne donne pas envie d'y répondre.

  7. #7
    Nouveau Candidat au Club
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2016
    Messages
    4
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Octobre 2016
    Messages : 4
    Points : 1
    Points
    1
    Par défaut
    Bonsoir,

    J'ai essayé avec nvarchar 60 puis 100
    Même résultat.
    Mes données n'affichent que les 15 premiers caractères...

    C'est une histoire de fou..

Discussions similaires

  1. (VC++6 /C) Pb de création de table Paradox
    Par Vow dans le forum Paradox
    Réponses: 4
    Dernier message: 28/09/2004, 13h15
  2. Création de table MySQL
    Par dehbi dans le forum SQL Procédural
    Réponses: 4
    Dernier message: 15/04/2004, 10h59
  3. Problème de création de table sous MySql
    Par ducamba dans le forum Requêtes
    Réponses: 2
    Dernier message: 21/06/2003, 09h59
  4. Création de table avec index
    Par Seb7 dans le forum Requêtes
    Réponses: 2
    Dernier message: 10/04/2003, 16h11
  5. Création multiple table paradox dans le code
    Par scarabee dans le forum C++Builder
    Réponses: 8
    Dernier message: 30/10/2002, 10h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo