Insert/Select Blob - Image

มีโจทย์ๆนึง ต้องการ Insert Input fileซึ่งเป็น Image เข้า Database 
แล้วให้ output บอกได้ว่า จาก input นี้ เค้าเป็นใคร 
เลยลองทำบน MS SQL server โดยเลือกเก็บไฟล์ image เป็น varbinary 
ดังนี้

1. สร้าง Table Employee
USE [TestBlob]
GO
/****** Object:  Table [dbo].[Employee]    Script Date: 12/04/2013 11:41:42 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
SET ANSI_PADDING ON
GO
CREATE TABLE [dbo].[Employee](
[EmployeeID] [int] IDENTITY(1,1) NOT NULL,
[EmployeeName] [nvarchar](255) NULL,
[EmployeeImage] [varbinary](max) NULL,
 CONSTRAINT [PK_Employee] PRIMARY KEY CLUSTERED
(
[EmployeeID] ASC
)WITH (PAD_INDEX  = OFF, STATISTICS_NORECOMPUTE  = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS  = ON, ALLOW_PAGE_LOCKS  = ON) ON [PRIMARY]
) ON [PRIMARY]
GO
SET ANSI_PADDING OFF
GO
2.Insert Image จาก directory

INSERT INTO Employee(EmployeeName,EmployeeImage)
SELECT 'Firstname Lastname',pp.* FROM
OPENROWSET(BULK N'C:\EmployeeImage1.png', SINGLE_BLOB)pp

3. ลอง select ดูสิ ว่ารูปนี้คือใครกันหนออ...
select * from Employee
where EmployeeImage=
(SELECT pp.* FROM
OPENROWSET(BULK N'C:\UnknownEmployee.png', SINGLE_BLOB)pp)







ความคิดเห็น

บทความที่ได้รับความนิยม