2009-04-13 7 views

Répondre

10

Voici un exemple de code pour stocker l'image au serveur sql:

SqlConnection conn = new SqlConnection(connectionString); 

try 
{ 
    int imageLength = uploadInput.PostedFile.ContentLength; 
    byte[] picbyte = new byte[imageLength]; 
    uploadInput.PostedFile.InputStream.Read (picbyte, 0, imageLength); 

    SqlCommand command = new SqlCommand("INSERT INTO ImageTable (ImageFile) VALUES (@Image)", conn); 
    command.Parameters.Add("@Image", SqlDbType.Image); 
    command.Parameters[0].Value = picbyte; 

    conn.Open(); 
    command.ExecuteNonQuery(); 
    conn.Close(); 
} 
finally 
{ 
    if (conn.State != ConnectionState.Closed) 
    { 
     conn.Close(); 
    } 
} 

REMARQUE: uploadInput est un contrôle d'entrée de fichier, pour télécharger le fichier d'image au serveur. Le code extrait d'une application ASP.NET

EDIT: Voici le script d'insertion à une image colonne typée:

INSERT INTO ImageTable (ImageColumn) 

SELECT ImageColumn FROM 
OPENROWSET(BULK N'C:\SampleImage.jpg', SINGLE_BLOB) 
AS ImageSource(ImageColumn); 
+1

Je pense que nous utilisons le code C# pour insérer les images sur SQL Server mais y a-t-il un script SQL tel que (Insérer INTO Tbale_Name (Name, Picture) Values ​​('Venkat', 'Ici le chemin de l'image') ... .Dont l'esprit pour poser ces questions je suis nouveau à RDBMS –

+0

venkat: Comme flatline suggère, regardez les commandes BULK –

+0

Comment stockez-vous des images dans FlatFile? –

2

Pour un accès purement scénarisé, regardez la commande dans VRAC Books Online. SQL Server 2005 vous permet de tirer des données binaires directement à partir du disque. Cela ne fonctionnera cependant pas avec les versions précédentes du serveur SQL.

Questions connexes