
假设数据库db1中有表tb1,表有ID,path两个字段,path用来存放路径
可用ID检索。
在工程中添加引用Microsoft ActiveX Data Object 25 才可以用ADODB
Dim rs As New ADODBRecordset
Dim 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
不明白了问我
1、在打开SQL Server Managemenet Studio窗口,在对象资源管理器窗口依次站看数据库——新建的数据库节点。
2、鼠标右键单击视图节点,在d出的快捷菜单中选择新建视图命令。
3、从添加表对话框中选择建立新视图的基表,视图和函数。
4、根据新建视图的需要,从表中选择视图引用的列。可以再关系图中选中相应表的相应列左边的复选框来完成。
5、最后,在视图设计器窗口中单击工具栏中的验证SQL语法,按钮检查T-SQL语法。确认语法正确后,单击执行 SQL按钮预览视图返回的结果。
如何将,Mp3 ,或是一些二进制类型的数据插入到sqlserver,或是 Oracle 数据库 方法是通过流进行 *** 作
创建一张测试表(sqlserver2000)
create table [pictable] (
[id] [int] identity (1, 1) not null ,
[img] [image] not null
) on [primary] textimage_on [primary]
go
插入数据库的方法(sqlserver2000)
thisgetConnection() 为获得连接的方法
public void insertPic(String path){
Connection con = thisgetConnection();
String sql = "insert into photo values()" ;
try {
PreparedStatement pstm = conprepareStatement(sql);
InputStream is = new FileInputStream("C:\My Doc\1jpg");
pstmsetBinaryStream(1, is, isavailable());
int count = pstmexecuteUpdate();
if(count>0){
Systemoutprintln("插入成功");
}else{
Systemoutprintln("插入失败");
}
isclose();
pstmclose();
conclose();
} catch (Exception e) {
eprintStackTrace();
}
}
你的语句是对的,你可以自己验证,更新UPDATE之后SELECT出数据库字段的值,显示出来人工查看是否异常。
对你这个基本正确的语句,我有两条意见供你参考:一是路劲分隔符号问题,这样的语句里面有\,写在程序里面(不是数据客户端查询)的时候,类C语言的语言(例如PERL、PHP、JAVA等)对字符串里面的\会进行转义,例如\n表示的是回车,对于这样的语言环境,我们要用\\来代替查询语句里面的路径分隔符;当然,某些早期在UNIX平台起家的语言(例如PERL、PHP等),可以使用UNIX的路径分隔符/来代替WINDOWS的\,而且程序代码能在WINDOWS下正确运行。二是BLOB对象问题,如果字段Clicense是一个字符串(也称文本)类,例如CHAR、VARCHAR、TEXT等,那么这个语句只是把文件名存入数据库,显示的的时候取出文件名还需要读取文件内容,如果需要把文件内容存入数据库,那么字段类型需要为对象,而且语句也稍有不同。
看你的表,不是保存在mysql数据库中,数据库中只是保存了的路径。想保存的数据库中必须定义字段为longblob类型如:`image` longblob ,然后
<$connect = MYSQL_CONNECT( "localhost", "root", "admin") or die("Unable to connect to MySQL server");
mysql_select_db("blogsystem") or die("Unable to select database");
$data = addslashes(fread(fopen($form_data, "r"), filesize($form_data)));
$result=MYSQL_QUERY( "INSERT INTO ccs_image (description,bin_data,filename,filesize,filetype) VALUES ('$form_description','$data','$form_data_name','$form_data_size','$form_data_type')");
$id= mysql_insert_id();
print "<p>This file has the following Database ID: <a href='get_dataphpid=$id'><b>$id</b></a>";
MYSQL_CLOSE();
>
sql中有数据类型image。在sql2005帮助中对此解释如下:
Microsoft SQL Server 2005 将超过 8,000 个字符的字符串和大于 8,000 字节的二进制数据存储为名为 text 和
image 的特殊数据类型。超过 4,000 个字符的 Unicode 字符串存储为 ntext 数据类型。
例如,您需要将一个大型客户信息文本文件 (txt) 导入 SQL Server
数据库。应将这些数据作为一个数据块存储起来,而不是集成到数据表的多个列中。为此,可以创建一个 text
数据类型的列。但是,如果必须存储公司徽标,它们当前存储为标记图像文件格式 (TIFF) 图像 (tif) 且每个图像的大小为 10 KB,则可以创建一个
image 数据类型的列。
如果要存储的文本数据是 Unicode 格式,那么应使用 ntext
数据类型。例如,一个为国际客户创建的套用信函很可能包含用于各种不同语言的国际拼写和字符。这种数据应存储在 ntext 列中。
每个 text 和 ntext 数据值都具有排序规则。排序规则定义各种属性,例如比较规则以及是否区分大小写或重音。text
值的排序规则还指定了代码页,代码页定义用于表示每个字符的位模式。每个 ntext 值均使用对所有排序规则都相同的 Unicode
代码页。每个数据库都有默认的排序规则。当创建 text 或 ntext 列时,除非使用 COLLATE
子句指定了特定的排序规则,否则将为其指定数据库的默认排序规则。当组合或比较两个具有不同排序规则的 text 或 ntext
值时,根据排序规则的优先规则来确定 *** 作所使用的排序规则。
image 数据中的数据被存储为位串,SQL Server 不对其进行解释。对 image
列中的数据的任何解释都必须由应用程序来完成。例如,应用程序可以用 BMP、TIFF、GIF 或 JPEG 格式将数据存储在 image 列中。从 image
列中读取数据的应用程序必须能够识别数据的格式并正确显示数据。image 列所做的全部工作就是提供一个位置,以存储组成图像数据值的位流。
通常情况下,text、ntext 或 image 字符串是存储在数据行外的大型(最高可达 2 GB)字符或二进制字符串。数据行只包括一个
16 字节的文本指针,该指针指向一个树的根节点,该树由映射存储串片段的页的内部指针构成。
使用 SQL Server,可将中小型 text、ntext 和 image
值存储在一个数据行中,从而提高查询访问这些值的速度。
当 text、ntext 或 image 字符串存储在数据行中时,SQL Server
无须访问单独的页或页集合来读写这些字符串。这使得对 text、ntext 或 image 行内字符串的读取几乎与对 varchar、nvarchar 或
varbinary 字符串的读取一样快。
若要在数据行中存储 text、ntext 或 image 字符串,必须先使用 sp_tableoption 存储过程启用 text in
row 选项。
以上就是关于access数据库中存储图片全部的内容,包括:access数据库中存储图片、sql数据库中如何存放图片相对路径(不用代码)、SQL server 用insert into 语句将图片插入到数据库表中等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)