
好久没有回答问题了,分有点底~~
使用ado控件来连接Access数据库,其中主要字段为:
字段名称类型描述
id自动编号 主键值
img OLE对象 用来保存数据
//保存到数据库中
procedure TForm1Button1Click(Sender: TObject);
var
F:File of Byte;
size:Longint; //文件大小
FilePath,time:string; //文件时间
begin
FilePath:=ExtractFilePath(Paramstr(0))+'demojpg';//地址为当前目录下
AssignFile(F,FilePath);
reset(F);
size:=Filesize(F);//获取文件大小。
time:=DatetimetoStr(FileDateToDateTime(FileAge(FilePath)));//获取文件创建时间。
closefile(F);
adoquery1Close;
adoquery1SQLClear;
adoquery1SQLAdd('select from Image');
adoquery1Open;
adoquery1Insert;
adoquery1FieldByName('FileName')AsString:=ExtractFileName(FilePath); //存储文件名称
adoquery1FieldByName('FileKind')AsString:=ExtractFileExt(FilePath); //存储文件扩展名。
adoquery1FieldByName('FileSize')AsInteger:=size; //存储文件的大小。
adoquery1FieldByName('FileTime')AsString:=time; //存储文件的创建时间。
adoquery1FieldByName('SaveTime')AsDateTime:=now();//存取文件的存储时间
TBlobField(ADOquery1FieldByName('FileContent'))LoadFromFile(FilePath);
ADOquery1Post;
end;
//使用Timage控件来显示数据库中的
procedure TForm1Button2Click(Sender: TObject);
Var
Ms:TStream;
jpg:Tjpegimage;
begin
adoquery1Close;
adoquery1SQLClear;
adoquery1SQLAdd('select top 1 from Image order by id desc');
adoquery1Open;
Ms:=TStreamCreate;
MS:=adoquery1CreateBlobStream(adoquery1FieldbyName('FileContent'),bmRead);
MsPosition :=0;
jpg:=TjpegimageCreate;
JpgLoadFromStream(Ms);
Image1PictureAssign(Jpg);
jpgFree;
MSFree;
end;
一般不建议直接把用二进制写到数据库里面
而是应该让用户上传到服务器,然后freetextbox里面引用这个在服务器的地址。
就是先上传--编辑器里面插入--存入数据库。
access数据库本身不提供加密,加密过程受控于网站的asp代码,你没有代码就不知道怎么加的密,不过大量网站都是用md5加密的,随便找个软件就能破解了。不过md5是单向散列算法(不明白就算了),也就是说,你只能靠枚举来破解密码,不要指望能通过算法解密出来
MD5加密算法
单向不可逆的算法
用MD5加密的方式是把用户的密码通过MD5加密后存储在数据库里,验证的时候只要把用户输入的密码用MD5加密以后与数据库里面的比较,一样就是正确的密码。
如果你密码忘了的话,把数据库里保存的MD5那段改成 202cb962ac59075b964b07152d234b70 ,然后用密码123登录。
因为123用MD5加密之后就是202cb962ac59075b964b07152d234b70,然后你再在你的修改密码中改成其他的。
数据库特点
1、数据结构化
数据库系统实现了整体数据的结构化,这是数据库的最主要的特征之一。这里所说的整体结构化,是指在数据库中的数据不再仅针对某个应用,而是面向全组织;不仅数据内部是结构化,而且整体式结构化,数据之间有联系;
2、数据的共享性高,冗余度低,易扩充
因为数据是面向整体的,所以数据可以被多个用户、多个应用程序共享使用,可以大大减少数据冗余,节约存储空间,避免数据之间的不相容性与不一致性;
3、数据独立性高
数据独立性包括数据的物理独立性和逻辑独立性。物理独立性是指数据在磁盘上的数据库中如何存储是由DBMS管理的,用户程序不需要了解,应用程序要处理的只是数据的逻辑结构,这样一来当数据的物理存储结构改变时,用户的程序不用改变。逻辑独立性是指用户的应用程序与数据库的逻辑结构是相互独立的,也就是说,数据的逻辑结构改变了,用户程序也可以不改变。数据与程序的独立,把数据的定义从程序中分离出去,加上存取数据的由DBMS负责提供,从而简化了应用程序的编制,大大减少了应用程序的维护和修改;
freecad一般用SQL数据库。
SQL(StructuredQueryLanguage)是具有数据 *** 纵和数据定义等多种功能的数据库语言,这种语言具有交互性特点,能为用户提供极大的便利,数据库管理系统应充分利用SQL语言提高计算机应用系统的工作质量与效率。SQL语言不仅能独立应用于终端,还可以作为子语言为其他程序设计提供有效助力,该程序应用中,SQL可与其他程序语言一起优化程序功能,进而为用户提供更多更全面的信息。
SQLServer数据库包括MicrosoftSQLServer以及SybaseSQLServer两个子数据库,该数据库能否正常运行直接关系着整个计算机系统的运行安全。
以MySQL为例:
影响数据库性能的主要因素总结如下:1、sql查询速度
2、网卡流量
3、服务器硬件
4、磁盘IO
以上因素并不是时时刻刻都会影响数据库性能,而就像木桶效应一样。如果其中一个因素严重影响性能,那么整个数据库性能就会严重受阻。另外,这些影响因素都是相对的。
例如:当数据量并没有达到百万千万这样的级别,那么sql查询速度也许就不是个重要因素,换句话说,你的sql语句效率适当低下可能并不影响整个效率多少,反之,这种情况,无论如何怎么优化sql语句,可能都没有太明显的效果。
相关内容拓展:1、SQL查询速度
风险:效率低下的SQL
2、网卡流量
风险:网卡IO被占满(100Mb/8=100MB)
方案:
①减少从服务器的数量。从服务器都要从主服务器上复制日志,所以,从服务器越多,网络流量越大。
②进行分级缓存。前方大量缓存突然失效会对数据库造成严重的冲击。
③避免使用“select ”进行查询
④分离业务网络和服务器网络
3、磁盘IO
风险:磁盘IO性能突然下降。
方案:使用更好的磁盘设备解决。
以上就是关于利用delphi7从数据库中读取图片的源程序 及所需要的控件及其属性全部的内容,包括:利用delphi7从数据库中读取图片的源程序 及所需要的控件及其属性、freetextbox怎么上传图片到数据库中、请问Access数据库里面的一些密码是用什么方式加密的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)