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

MS SQL Server Discussion :

[sql2000]Pb req avec OPENROWSET BUILK


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 94
    Par défaut [sql2000]Pb req avec OPENROWSET BUILK
    Bonjour,
    Je veux inserer n'importe quel type de fichier dans une table de ma BD.
    Avec SQL Server 2005, j'ai un champ (Filecontent) de type varbinary(max) et ma requete
    insert into MaTABLE(Filecontent) select * from OPENROWSET(BULK 'D:\image.jpg', SINGLE_BLOB) as Filecontent
    fonctionne.
    Par contre en SQL 2000, mon champ Filecontent est de type varbinary(8000) et la requete ci-dessus me renvoie l'erreur "Incorrect syntax near the keyword BUILK".
    Comment faire en SQL 2000 ?

    Merci

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Mars 2002
    Messages
    52
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mars 2002
    Messages : 52
    Par défaut
    Bonjour,

    Documentation OPENROWSET pour sql server 200 :
    http://msdn.microsoft.com/en-us/libr...0(SQL.80).aspx

    C'est une nouveauté depuis sql server 2005.

    essaye de voir du coté du BULK INSERT
    exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    declare @Filecontent varbinary(8000)
    -- création table temporaire 
    create table #Fichiers (data varbinary(8000))
    -- on récupére le fichier 
    BULK INSERT #Fichiers 
             FROM 'D:\image.jpg' 
    -- on le stocke dans une variable 
    select @Filecontent =  data from #Fichiers
    -- un peu de ménage  
    drop table #Fichiers
    INSERT INTO MaTABLE(Filecontent) values (@Filecontent)
    ps: j'ai pas testé .. (je n'ai pas de 2000 sous la main)
    @+

  3. #3
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Le "I" dans BUILK est-il-volontaire ? (présence dans le titre et dans votre erreur)
    La commande est BULK INSERT

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Avril 2006
    Messages
    94
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2006
    Messages : 94
    Par défaut
    elsuket, le "I" dans BUILK est involontaire.
    zeus,en utilisant ton code j'obtiens l'erreur :
    BULK INSERT data conversion error (type mismatch)(data) for row 1, column 1
    Que faut-il ajouter ?

    Merci

Discussions similaires

  1. sa marche pas d'executer une req avec validate_stmt
    Par menoran dans le forum Oracle
    Réponses: 1
    Dernier message: 05/05/2010, 00h35
  2. Réponses: 1
    Dernier message: 08/07/2009, 09h37
  3. Réponses: 0
    Dernier message: 16/12/2008, 22h50
  4. [SQL2000]Accès serveur avec plusieurs instances
    Par SLE dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 10/01/2008, 21h26
  5. Update Excel avec OPENROWSET
    Par Bacchor dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 12/03/2007, 12h29

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