イメージをデータベースに格納するには、イメージをバイトに変換する必要があります。IO.File.ReadAllBytes()
ローカル ファイルまたはNet.WebClient.DownloadData()
Web ファイルに使用できます。IMAGE
SQL Server ではデータ型がなくなるため、これを使用しVARBINARY(MAX)
て格納します。
コード:
Dim url As String = "http://example.com/image.png",
file As String = "c:\image.png"
Using connection As New Data.SqlClient.SqlConnection("your connection string"),
saveImage As New Data.SqlClient.SqlCommand("dbo.saveImage", connection)
connection.Open()
saveImage.CommandType = Data.CommandType.StoredProcedure
'use only one of these
saveImage.Parameters.AddWithValue("@imageData", New Net.WebClient().DownloadData(url)) 'get file from url
'saveImage.Parameters.AddWithValue("@imageData", IO.File.ReadAllBytes(file)) 'get file locally
saveImage.ExecuteNonQuery()
End Using
手順:
CREATE PROCEDURE [dbo].[saveImage] ( @imageData AS VARBINARY(MAX) )
AS
INSERT INTO dbo.myImage ( imageData ) VALUES ( @imageData )
テーブル:
CREATE TABLE [dbo].[myImage](
[imageData] [varbinary](max) NOT NULL
)