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

Langage SQL Discussion :

SQL insertion en bdd d'une documentation ou video ?


Sujet :

Langage SQL

  1. #1
    Membre régulier Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Points : 91
    Points
    91
    Par défaut SQL insertion en bdd d'une documentation ou video ?
    Bonjour à tous,
    Je dois réaliser un portail web (technologie Java/J2ee, Struts, JPA et Serveur Websphere) et il faudrait pouvoir à partir d'une page, mettre en ligne une video, une documentation (pdf/ppt) ou image). Je ne l'ai jamais fait et deja, j'aimerais savoir si en base de donnée, on stocke une vidéo ou un fichier pdf et si oui, comment ?
    Y a t il une requete SQL specifique pour mettre en base de donnée ce type de donnée !!!
    Sinon comment faire ?
    Merci pour votre réponse,

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 882
    Points : 53 061
    Points
    53 061
    Billets dans le blog
    6
    Par défaut
    Pour les bons SGBDR comme DB2 ou MS SQL Server il y a ce que la norme appelle le datalink (tel quel dans db2, sous forme de filestream dans sql server)

    voici ce que je dit à ce sujet dans mon livre sur le langage sql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    5.8		DATALINK
     
    Le type DATALINK est une référence à un fichier externe, permettant, par exemple, de stocker des images, de la vidéo, des sons et des fichiers binaires. Les fichiers ainsi référencés restent sur un disque quelconque du système informatique. Les données sont donc externes à la base, mais il est possible de maintenir une intégrité, de manière à interdire modification et suppression des fichiers autrement que par un ordre SQL de la base. 
    Il se déclare ainsi :
     
    DATALINK [ <options_de_contrôle> ]
     
    <options_de_contrôle> ::= 
       NO LINK CONTROL | FILE LINK CONTROL <option_de_contrôle_fichier>
     
    <option_de_contrôle_fichier> ::=
       <option_intégrité> <autorisation_lecture> <autorisation_écriture>
       <option_récupération> [ <option_détachement> ]
     
    <option_intégrité> ::=
       INTEGRITY ALL
       | INTEGRITY SELECTIVE
       | INTEGRITY NONE
     
    <autorisation_lecture> ::=
       READ PERMISSION FS
       | READ PERMISSION DB
     
    <autorisation_écriture> ::=
       WRITE PERMISSION FS
       | WRITE PERMISSION BLOCKED
     
    <option_récupération> ::=
       RECOVERY NO
       | RECOVERY YES
     
    <option_détachement> ::=
       ON UNLINK RESTORE
       | ON UNLINK DELETE
       | ON UNLINK NONE
     
    NO LINK CONTROL signifie que les liens ne sont connus par la base que par leur nom (URI : Uniform Ressource Identifier). Dans le cas contraire, FILE LINK CONTROL, il est possible de piloter les liens par les options de la base de données décrites ci-dessous :
    •		INTEGRITY ALL : seul un ordre SQL peut supprimer ou modifier les fichiers afférant au lien.
    •		INTEGRITY SELECTIVE : un ordre SQL, comme le système de fichier de l’OS, peut supprimer ou modifier les fichiers afférant au lien.
    •		INTEGRITY NONE : seul le système de fichier de l’OS peut supprimer ou modifier les fichiers afférant au lien.
    •		READ PERMISSION FS : les droits en lecture sont définis par le système de fichiers.
    •		READ PERMISSION DB : les droits en lecture sont définis par la base de données.
    •		WRITE PERMISSION FS : les droits en écriture sont définis par le système de fichiers.
    •		WRITE PERMISSION BLOCKED : aucun droit en écriture n’est autorisé.
    •		RECOVERY YES : sauvegarde et restauration possibles dans le cadre de la base de données.
    •		RECOVERY NO : sauvegarde et restauration impossibles dans le cadre de la base de données.
    •		ON UNLINK RESTORE : restaure les droits et propriétaire système originels si le lien est détaché de la base.
    •		ON UNLINK DELETE : supprime le fichier en cas de détachement de la base.
    •		ON UNLINK NONE : en cas de détachement de la base, le fichier n’est pas supprimé et les droits restent tels quels (des droits système sont appliqués par défaut si cela est possible).
     
    Exemple :
     
    CREATE TABLE T_FILM_FLM
    (FLM_ID    INT NOT NULL PRIMARY KEY,
     FLM_TITRE VARCHAR(256),
     FLM_FILM  DATALINK FILE LINK CONTROL
                        INTEGRITY ALL
                        READ PERMISSION DB
                        WRITE PERMISION BLOCKED
                        RECOVERY YES
                        ON UNLINK NONE,
     FLM_ANNEE INT)
     
    SQL:1999 fournit, en outre, des fonctions afin de piloter l’insertion, la restitution, comme l’extraction de certaines parties de l’URI :
    •		DLVALUE : instancie la valeur de l’URI pour la colonne de type DATALINK (constructeur).
    •		DLURLCOMPLETE : restitue la valeur de l’URI contenu dans la colonne de type DATALINK.
    •		DLURLPATH : restitue le chemin de l’URI, avec son origine.
    •		DLURLPATHONLY : restitue le chemin de l’URI, sans son origine.
    •		DLURLSCHEME : restitue le mode de flux (http ou file) de l’URI.
    •		DLURLSERVER : restitue la ressource de l’URI.
     
    Exemple :
     
    INSERT INTO T_FILM_FLM (FLM_ID, FLM_TITRE, FLM_FILM, FLM_ANNEE)
           VALUES (178, 'West Side Story', 
                   DLVALUE('file://srvmed/films/WesSideStory.mpeg'),
                   1960)
    insère une ligne dans la table T_FILM_FLM avec la référence au fichier vidéo du film « West Side Story ».
    SELECT FLM_TITRE, FML_ANNEE, DRURLCOMPLETE(FLM_FILM) AS FLM_MPEG
    FROM   T_FILM_FLM
    WHERE  FLM_ID = 178
     
    FLM_TITRE         FML_ANNEE    FLM_MPEG
    ----------------- ------------ ---------------------------------------
    West Side Story   1960         file://srvmed/films/WesSideStory.mpeg
    A +

  3. #3
    Membre régulier Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Points : 91
    Points
    91
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Pour les bons SGBDR comme DB2 ou MS SQL Server il y a ce que la norme appelle le datalink (tel quel dans db2, sous forme de filestream dans sql server)

    voici ce que je dit à ce sujet dans mon livre sur le langage sql :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    5.8		DATALINK
     
    Le type DATALINK est une référence à un fichier externe, permettant, par exemple, de stocker des images, de la vidéo, des sons et des fichiers binaires. Les fichiers ainsi référencés restent sur un disque quelconque du système informatique. Les données sont donc externes à la base, mais il est possible de maintenir une intégrité, de manière à interdire modification et suppression des fichiers autrement que par un ordre SQL de la base. 
    Il se déclare ainsi :
     
    DATALINK [ <options_de_contrôle> ]
     
    <options_de_contrôle> ::= 
       NO LINK CONTROL | FILE LINK CONTROL <option_de_contrôle_fichier>
     
    <option_de_contrôle_fichier> ::=
       <option_intégrité> <autorisation_lecture> <autorisation_écriture>
       <option_récupération> [ <option_détachement> ]
     
    <option_intégrité> ::=
       INTEGRITY ALL
       | INTEGRITY SELECTIVE
       | INTEGRITY NONE
     
    <autorisation_lecture> ::=
       READ PERMISSION FS
       | READ PERMISSION DB
     
    <autorisation_écriture> ::=
       WRITE PERMISSION FS
       | WRITE PERMISSION BLOCKED
     
    <option_récupération> ::=
       RECOVERY NO
       | RECOVERY YES
     
    <option_détachement> ::=
       ON UNLINK RESTORE
       | ON UNLINK DELETE
       | ON UNLINK NONE
     
    NO LINK CONTROL signifie que les liens ne sont connus par la base que par leur nom (URI : Uniform Ressource Identifier). Dans le cas contraire, FILE LINK CONTROL, il est possible de piloter les liens par les options de la base de données décrites ci-dessous :
    •		INTEGRITY ALL : seul un ordre SQL peut supprimer ou modifier les fichiers afférant au lien.
    •		INTEGRITY SELECTIVE : un ordre SQL, comme le système de fichier de l’OS, peut supprimer ou modifier les fichiers afférant au lien.
    •		INTEGRITY NONE : seul le système de fichier de l’OS peut supprimer ou modifier les fichiers afférant au lien.
    •		READ PERMISSION FS : les droits en lecture sont définis par le système de fichiers.
    •		READ PERMISSION DB : les droits en lecture sont définis par la base de données.
    •		WRITE PERMISSION FS : les droits en écriture sont définis par le système de fichiers.
    •		WRITE PERMISSION BLOCKED : aucun droit en écriture n’est autorisé.
    •		RECOVERY YES : sauvegarde et restauration possibles dans le cadre de la base de données.
    •		RECOVERY NO : sauvegarde et restauration impossibles dans le cadre de la base de données.
    •		ON UNLINK RESTORE : restaure les droits et propriétaire système originels si le lien est détaché de la base.
    •		ON UNLINK DELETE : supprime le fichier en cas de détachement de la base.
    •		ON UNLINK NONE : en cas de détachement de la base, le fichier n’est pas supprimé et les droits restent tels quels (des droits système sont appliqués par défaut si cela est possible).
     
    Exemple :
     
    CREATE TABLE T_FILM_FLM
    (FLM_ID    INT NOT NULL PRIMARY KEY,
     FLM_TITRE VARCHAR(256),
     FLM_FILM  DATALINK FILE LINK CONTROL
                        INTEGRITY ALL
                        READ PERMISSION DB
                        WRITE PERMISION BLOCKED
                        RECOVERY YES
                        ON UNLINK NONE,
     FLM_ANNEE INT)
     
    SQL:1999 fournit, en outre, des fonctions afin de piloter l’insertion, la restitution, comme l’extraction de certaines parties de l’URI :
    •		DLVALUE : instancie la valeur de l’URI pour la colonne de type DATALINK (constructeur).
    •		DLURLCOMPLETE : restitue la valeur de l’URI contenu dans la colonne de type DATALINK.
    •		DLURLPATH : restitue le chemin de l’URI, avec son origine.
    •		DLURLPATHONLY : restitue le chemin de l’URI, sans son origine.
    •		DLURLSCHEME : restitue le mode de flux (http ou file) de l’URI.
    •		DLURLSERVER : restitue la ressource de l’URI.
     
    Exemple :
     
    INSERT INTO T_FILM_FLM (FLM_ID, FLM_TITRE, FLM_FILM, FLM_ANNEE)
           VALUES (178, 'West Side Story', 
                   DLVALUE('file://srvmed/films/WesSideStory.mpeg'),
                   1960)
    insère une ligne dans la table T_FILM_FLM avec la référence au fichier vidéo du film « West Side Story ».
    SELECT FLM_TITRE, FML_ANNEE, DRURLCOMPLETE(FLM_FILM) AS FLM_MPEG
    FROM   T_FILM_FLM
    WHERE  FLM_ID = 178
     
    FLM_TITRE         FML_ANNEE    FLM_MPEG
    ----------------- ------------ ---------------------------------------
    West Side Story   1960         file://srvmed/films/WesSideStory.mpeg
    A +


    Hello,
    Merci pour ta réponse, donc à partir de cette norme DATALINK, on peut inserer, selection supprimer ou modifier une video en base SQL....Y a t il un format special de video ?
    Est ce que c'est le même principe pour un document ou une image !
    Merci pour ta réponse,

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 882
    Points : 53 061
    Points
    53 061
    Billets dans le blog
    6
    Par défaut
    Le fichier n'est pas stocké dans la base. Il est stocké dans le file système, mais sous la responsabilité du SGBDR.

    A +

  5. #5
    Membre régulier Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Points : 91
    Points
    91
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Le fichier n'est pas stocké dans la base. Il est stocké dans le file système, mais sous la responsabilité du SGBDR.

    A +

    C'est à dire FILE SYSTEM, un lien enregistrer en base
    qui pointe vers un endroit où son stocker tes videos ?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 882
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 882
    Points : 53 061
    Points
    53 061
    Billets dans le blog
    6
    Par défaut
    Je pense avoir été assez clair !
    Relisez moi :
    Le type DATALINK est une référence à un fichier externe, permettant, par exemple, de stocker des images, de la vidéo, des sons et des fichiers binaires. Les fichiers ainsi référencés restent sur un disque quelconque du système informatique. Les données sont donc externes à la base, mais il est possible de maintenir une intégrité, de manière à interdire modification et suppression des fichiers autrement que par un ordre SQL de la base.

    A +

  7. #7
    Membre régulier Avatar de silverfab34
    Inscrit en
    Mars 2006
    Messages
    203
    Détails du profil
    Informations personnelles :
    Âge : 44

    Informations forums :
    Inscription : Mars 2006
    Messages : 203
    Points : 91
    Points
    91
    Par défaut
    Citation Envoyé par SQLpro Voir le message
    Je pense avoir été assez clair !
    Relisez moi :
    Le type DATALINK est une référence à un fichier externe, permettant, par exemple, de stocker des images, de la vidéo, des sons et des fichiers binaires. Les fichiers ainsi référencés restent sur un disque quelconque du système informatique. Les données sont donc externes à la base, mais il est possible de maintenir une intégrité, de manière à interdire modification et suppression des fichiers autrement que par un ordre SQL de la base.

    A +
    Oui merci !

Discussions similaires

  1. [MySQL] Cases cochées : insertion en bdd via une popup
    Par Jarodd dans le forum PHP & Base de données
    Réponses: 17
    Dernier message: 14/11/2008, 12h58
  2. [PL/SQl] Insertion de valeurs dans une table
    Par ApprentiOracle dans le forum SQL
    Réponses: 4
    Dernier message: 29/11/2007, 19h05
  3. [SQL] Insertion ds Bdd
    Par lynxxx dans le forum PHP & Base de données
    Réponses: 23
    Dernier message: 25/06/2007, 19h03
  4. [Pl/Sql] Insert ou Update dans une fonction
    Par shaun_the_sheep dans le forum Oracle
    Réponses: 12
    Dernier message: 18/04/2006, 15h28
  5. [VB.NET 2005][SQL SERVER 2005] Pb d'insertion en BdD
    Par jhary07 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 02/01/2006, 08h53

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