
Access存储相片,列必须使用长二进制类型才行
原则上来说,不建议你将相片存储到数据库中,因为数据库一般是存储数据的而不适合存储大批量文件,因为相片一旦多了,读取会非常缓慢,建议你在数据库中只存储相片的路径即可。
延伸:在数据库中保存相片路径的做法:
假设数据库db1中有表tb1,表有ID,path两个字段,path用来存放路径
可用ID检索。
在工程中添加引用Microsoft ActiveX Data Object 25 才可以用ADODB
Dim rs As New ADODBRecordsetDim cn As New ADODBConnection
Dim cmd As New ADODBCommand
'
Private Sub Form_Load()
cnConnectionString = "Provider=MicrosoftJetOLEDB40;Data Source=E:\xyl\kylinDoc\other\db1mdb;Persist Security Info=False"
cnCursorLocation = adUseClient
cnMode = adModeReadWrite
cnOpen
cmdActiveConnection = cn
cmdCommandType = adCmdText
Dim i As Integer
For i = 0 To 3
MeOption1(i)Caption = "Picture" & i + 1
Next i
End Sub
Private Sub Option1_Click(Index As Integer)
cmdCommandText = "select path from tb1 where id=" & Index + 1
Set rs = cmdExecute
Image1Picture = LoadPicture(rsFields("path"))
Text1Text = rsFields("path")
End Sub
end sub
在编程中并不推荐将照片直接写入数据库中,貌似sql server2008也不支持直接存储照片,照片体积太大,如果并发用户过多,容易造成数据库读取的拥堵,因此,很多软件和网页在编程的时候仅仅将的地址写入数据库,通过调用数据库的地址来调取,比如: 我以access数据库做示范
你搞错了 网站数据库里面存的都是的 路径+名 上传会先被修改名 放到内存中 暂时寄存 然后创建或者指定文件夹后 就把寄存的转存到文件夹中 最终返回一个路径+名然后再存到数据库 所以的类型是varchar(80) 基本就够用了
请LZ参考下面的资料:raw(n) n=1 to 2000可变长二进制数据,在具体定义字段的时候必须指明最大长度n,Oracle 8i用这种格式来保存较小的图形文件或带格式的文本文件,如Miceosoft Word文档。raw是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。long raw可变长二进制数据,最大长度是2GB。Oracle 8i用这种格式来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件。在同一张表中不能同时有long类型和long raw类型,long raw也是一种较老的数据类型,将来会逐渐被BLOB、CLOB、NCLOB等大的对象数据类型所取代。blob,clob,nclob三种大型对象(LOB),用来保存较大的图形文件或带格式的文本文件,如Miceosoft Word文档,以及音频、视频等非文本文件,最大长度是4GB。LOB有几种类型,取决于你使用的字节的类型,Oracle 8i实实在在地将这些数据存储在数据库内部保存。可以执行读取、存储、写入等特殊 *** 作。
以上就是关于要把学生的相片存入access数据库表中,应才用的数据类型是全部的内容,包括:要把学生的相片存入access数据库表中,应才用的数据类型是、sql server 2008 中照片的数据类型是什么、图片存到数据库的数据类型。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)