如何向SQL SERVER 2008 插入图片数据

最近在弄数据库,涉及到插入图片,但2008里已经不在支持TEXTCOPY, 需要用到openrowset.实际上个人认为这个更好用。以下从别处copy的例子

UPDATE and OPENROWSET can be used together to import an image into a table.

OPENROWSET can be used to import a file into a single row, single column value.

OPENROWSET
( BULK ‘data_file‘,| SINGLE_BLOB | SINGLE_CLOB | SINGLE_NCLOB )

Parameter      Description
data_file      The name and path of the file to read.
SINGLE_BLOB |      Designate the SINGLE_BLOB object for importing into a varbinary(max) data
SINGLE_CLOB |      type, SINGLE_CLOB for ASCII data into a varchar(max) data type, and
SINGLE_NCLOB      SINGLE_NCLOB for importing into a nvarchar(max) UNICODE data type.

Referenced from:
SQL Server 2005 T-SQL Recipes A Problem-Solution Approach
20>
21>
22> CREATE TABLE ImageTable(
23> ID int NOT NULL,
24> Gif varbinary(max) NOT NULL
25> )
26> GO
1>
2> INSERT ImageTable
3> (ID, Gif)
4> SELECT 1,
5> BulkColumn
6> FROM OPENROWSET(BULK ‘C:\yourImage.gif‘,SINGLE_BLOB) AS x
7> GO

1>
2> SELECT Gif
3> FROM ImageTable
4> WHERE ID = 1
5> GO

1>
2> UPDATE ImageTable
3> SET Gif =
4> (SELECT BulkColumn
5> FROM OPENROWSET(BULK
6> ‘C:\newImage.gif‘,
7> SINGLE_BLOB) AS x)
8> WHERE ID =1
9> GO

1>
2> drop table ImageTable
3> GO
 
时间: 2024-11-02 07:08:00

如何向SQL SERVER 2008 插入图片数据的相关文章

SQL Server 2008 插入修改图片信息

在SQL Server 2008中我们可以用varbinary(max) 数据类型来保存一张图片,不过它的播入与修改与别的数据还是有一点点不同的. 下面看例子: 1.定义表:create table T_Image(ID int not null, BmpImage varbinary(max) not null) 2.向表中插入数据: insert into T_Image(ID,BmpImage) select 1,bulkcolumn --bulkcolumn这个关键字要记下来  大数据列

sql点滴38—SQL Server 2008和SQL Server 2008 R2导出数据的选项略有不同

原文:sql点滴38—SQL Server 2008和SQL Server 2008 R2导出数据的选项略有不同 说明: 以前要将一个表中的数据导出为脚本,只有用存储过程.现在在SQL Server 2008中增加了一个新特性,除了导出表的定义外,还支持将表中的数据导出为脚本. 步骤: 右击需要导出数据的数据库,在弹出式菜单中选择“任务”下的“生成脚本”选项 在第二步选择“高级选项”如果不是2008(R2)的选择 "编写数据的脚本"选择为TRUE,这里默认是为FALSE的 , 是200

SQL Server 2008 数据库误删除数据的恢复

原文:http://www.cnblogs.com/dudu/archive/2011/10/15/sql_server_recover_deleted_records.html SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是“完整(Full)”. 针对这两个前提条件,会有三种情况: 情况一.如果这两个前提条件都存在,通过SQL语句只

实战 SQL Server 2008 数据库误删除数据的恢复

关键字:SQL Server 2008, recover deleted records 今天有个朋友很着急地打电话给我,他用delete语句误删除了SQL Server 2008数据库中两个表中的所有记录,而这个数据库之前没有任何备份.让我帮他解决一下,不然他要赔偿客户很多钱. SQL Server中误删除数据的恢复本来不是件难事,从事务日志恢复即可.但是,这个恢复需要有两个前提条件: 1. 至少有一个误删除之前的数据库完全备份. 2. 数据库的恢复模式(Recovery mode)是“完整(

SQL SERVER 2008 索引、数据存储基本理论【原创】

介于,最近发现,向高级程序员进阶过程中,SQL SERVER并发处理,索引,GC,缓存方面的高级理解必不可少.因此,为以后做准备,决定将相关的文档整理一份. 希望能对自己,对博友有一定的吧帮助. 一:基本概念 1.索引的用途:为数据库提供了额外的方式查找数据并快速找到数据的存储位置.我们可以把SQL SERVER中的数据视为存储在某种层次结构中的数据. 2.文件:数据库有关的文件包括两种:.mdf文件和.ldf文件. ①.mdf文件是主物理数据库文件,是最终存储数据的地方,可以添加“次文件”(.

SQL Server 2008将数据库数据导出到脚本

1.在要到处的数据库上右键 2.选择“任务” 3.选择“生成脚本” 4.选定要导出的数据库 5.在“编写数据的脚本”处选择“True” 6.接下来选定要导出的表,然后选择“完成”

SQL Server 2008 R2导出数据脚本的方法

点击高级 在底部的样子,选择[要改写脚本的数据类型]

初探SQL Server 2008的性能数据收集器

http://www.ebay.com/cln/3us7775/-/138733056019http://www.ebay.com/cln/2us7597/-/138975987013http://www.ebay.com/cln/6_42675/-/139103819015http://www.ebay.com/cln/6us7379/-/138733086019http://www.ebay.com/cln/9us0489/-/139007816016http://www.ebay.com/

使用变量向SQL Server 2008中插入数据

QT通过ODBC连接数据库SQL Server 2008,进行数据插入时遇到的问题: 先把数据存入变量中,如何使用变量进行插入?插入语句该怎么写? QSqlQuery query(db); query.exec("insert into device values('"+datetime+"','"+splantNum+"','"+sdeviceNum+"','"+stemper+"','"+spress+