一般来说,插入Blob字段数据,多数以在前台程序以流的方式来执行,但有的时候,难免要写后台的SQL语句插入Blob字段数据。在 SQL Server 2000之前的版本,用SQL 插入Blob(TEXT)字段一直是麻烦问题,在SQL SERVER 2005(2008)之后的版本,终于有了极大简化,范例如下:
INSERT INTO E_UserPhoto(UserID, CreateTime,UpdateTime,Photo)
SELECT 7,GETDATE(),GETDATE(),
* FROM OPENROWSET(BULK N'C:\Users\Administrator\Pictures\a.jpg', SINGLE_BLOB)
as photo
请注意,获取BLOB字段后必须用字段别名命名,如 As Photo,否则会有以下错误:
必须在 FROM 子句中为大容量行集指定相关名称。