SQL Server2005中,我用image类型来存取图片,首先把数据库表设置好

例如我的pic表有如下两列:时间,图片。

delphi中,我用ADOQuery来连接数据库,但是数据库中有好几张表,我只往其中一张表里存图片。

首先将摄像头传来的jpeg图片存入文件中,将路径设为全局变量以供后续使用。(当然你也可以用现成的jpeg图片)

  1. function/procedure 存入图片过程
  2.  
  3. var
  4.  
  5. strmDB: TMemoryStream;
  6.  
  7. begin
  8.  
  9. strmDB:= TMemoryStream.Create;
  10.    TMemoryStream(strmDB).LoadFromFile(sLocate1);//此处sLocate1为文件路径
  11. with ADOQuery1 do
  12.  
  13. begin
  14.  
  15. Close;
  16.  
  17. SQL.Clear;
  18.  
  19. SQL.Text:='INSERT INTO pic VALUES('''+DateTimeToStr(Now)+''', :a) ';
  20.  
  21. Parameters.ParamByName('a').LoadFromStream(strmDB, ftBlob);
  22.  
  23. ExecSQl;
  24.  
  25. end;
  26.  
  27. strmDB.Free;
  28.  
  29. end;

读取过程

  1. strmDB := tadoblobstream.Create(tblobfield(fieldbyname('图片')),bmread);

这是关键一句,前提是按你自己的条件打开pic这张表,再操作,如果提示找不到‘图片’这一列之类的错误,请务必将你的sql代码放到SQLServer2005上去试一下

就知道哪里出错了,经常是没有运行open之类的句子就进行fieldbyname的操作。

delphi向SQL Server2005中存取图片的更多相关文章

  1. c#在sql中存取图片image示例

    这篇文章主要介绍了c#在sql中存取图片image示例,需要的朋友可以参考下 (1)控制台应用程序下演示插入图片 复制代码 代码如下: public void InsertIMG() { //将需要存 ...

  2. MVC3学习:Sql Server2005中时间类型DateTime的显示

    在Sql Server2005中,如果将某字段定义成日期时间类型DateTime,那么在视图中会默认显示成年月日时分秒的方式(如 2013/8/6 13:37:33) 如果只想显示成年月日形式,不要时 ...

  3. 用Delphi从内存流中判断图片格式[转]

    http://blog.163.com/tfn2008%40yeah/blog/static/110321319201222243214337/ 用Delphi从内存流中判断图片格式[转] 2012- ...

  4. NET在SQL Server中的图片存取技术

    本文总结如何在.Net WinForm和.Net WebForm(asp.net)中将图片存入SQL Server中并读取显示的方法 .1.使用asp.net将图片上传并存入SQL Server中,然 ...

  5. delphi 转换sql server 中的 bit类型

    FieldByName('e').AsBoolean = false 其中e为 sql server 中的bit类型.

  6. 如何在数据表中存取图片 - 回复 "三足乌" 的问题

    问题来源: http://www.cnblogs.com/del/archive/2009/05/28/1491186.html#1801853 准备工作:1.在空白窗体上添加: ClientData ...

  7. 使用C#向Sql Sever中存取网络图片和本地图片(二进制流的形式)

    先是做普通的,存储我们本地的图片,将它转化为二进制流存储到数据库对应的表中. 代码如下: string path = "../../A.jpg"; FileStream fs = ...

  8. hibernate学习笔记(5)在数据库中存取图片

    如何从数据库读取存入的图片,即Blob(二进制)数据. 先从数据库读取对象. 再从获取的对象中得到blob对象. 通过blob对象的getBinaryStream()方法获取input输出流. 之后通 ...

  9. 【转】sql server2005中raiserror的用法

    raiserror  是由单词 raise error 组成     raise  增加; 提高; 提升 raiserror 的作用: raiserror 是用于抛出一个错误.[ 以下资料来源于sql ...

随机推荐

  1. Ubuntu下安装Nginx详细步骤

    Nginx安装之前需要三个支持: 模块依赖性 ①gzip 模块需要 zlib 库 ②rewrite 模块需要 pcre 库 ③ssl 功能需要 openssl 库 预先编译好的包: sudo apt- ...

  2. Flask系列(四)Flask实现简单页面登陆

    from flask import Flask,render_template,request,redirect,session app = Flask(__name__,template_folde ...

  3. mybatis 中jdbctype和javatype的对应关系

    1:mybatis 中jdbctype和javatype的对应关系 JDBC Type Java Type CHAR String VARCHAR String LONGVARCHAR String ...

  4. hadoop中map和reduce的数量设置

    hadoop中map和reduce的数量设置,有以下几种方式来设置 一.mapred-default.xml 这个文件包含主要的你的站点定制的Hadoop.尽管文件名以mapred开头,通过它可以控制 ...

  5. RDD, DataFrame or Dataset

    总结: 1.RDD是一个Java对象的集合.RDD的优点是更面向对象,代码更容易理解.但在需要在集群中传输数据时需要为每个对象保留数据及结构信息,这会导致数据的冗余,同时这会导致大量的GC. 2.Da ...

  6. 装饰器的修复wraps,偏函数partial 以及chain

    将被装饰的函数的一些属性值赋值给 装饰器函数,最终让属性的显示更符合我们的直觉. from functools import wraps def wapper(func): @wraps(func) ...

  7. 26种基于PHP的开源博客系统

    26种基于PHP的开源博客系统 来源:本站原创 PHP学习笔记 以下列举的PHP开源Blog系统中,除了我们熟知的WordPress之外,大多都没有使用过,其中一些已经被淘汰,或者有人还在使用.除了做 ...

  8. 【深入理解JVM】:类加载器与双亲委派模型

    类加载器 加载类的开放性 类加载器(ClassLoader)是Java语言的一项创新,也是Java流行的一个重要原因.在类加载的第一阶段“加载”过程中,需要通过一个类的全限定名来获取定义此类的二进制字 ...

  9. hdu1199 线段树

    这题说的是给了 n 个操作. 每个操作会把 [a,b] 之间的球 涂为黑色或者 白色, 然后最后问 最长的连续的白色的 球有多少个,初始的时候全是黑的. 我们将所有的点离散化, 记得离散 a-1, b ...

  10. BNUOJ 26474 Bread Sorting

    /*给出n个原始顺序的数,再给出要排成目标状态顺序,每次从第一个数列中选择三个,把这三个数中最右边的数放在最左边,然后其他两个数右 移一个单位,为你从原始状态能不能排序成目标状态. 本人YY的结论,从 ...