把zip或doc文件存到了SQL Server的数据库中,怎样把它读出

把zip或doc文件存到了SQL Server的数据库中,怎样把它读出,第1张

'如何打开并输出一个数据库中的文件流?

'按普通方式打开数据库,之后求得该文件字节大小,在网页中输出该文件MIME类型,再用binarywrite输出

'之前必须将以下语句放在一个页面中,而在另一个页面对之进行调用输出显示。

Set rs = Server.CreateObject("ADODB.recordset")

sql="select * from b_hn_sgbb_rtu where sgbh='02713700001' and xh='2'"

rs.open sql,cn,1,1

'以下两句是在网页中打开WORD文档

'tu_size=rs("tu").ActualSize

'Response.ContentType = rs("types")

'Response.BinaryWrite rs("tu").getChunk(tu_size)

'以下三句是将数据库中的流文件当作一个文件,可以打开也可以下载回来

Response.ContentType = "Application/octet-stream"

tu_size=rs("tu").ActualSize

Response.AddHeader "Content-Disposition", "attachmentfilename=" &rs("filename")

Response.BinaryWrite rs("tu").getChunk(tu_size)

rs.close

'常见文件的MIME类型

'GIF文件 "image/gif"

'BMP文件 "image/bmp"

'JPG文件 "image/jpeg"

'zip文件 "application/x-zip-compressed"

'DOC文件 "application/msword"

'文本文件 "text/plain"

'HTML文件 "text/html"

'一般文件 "application/octet-stream"

1.修改PHP配置文件,保证能够连接到数据库。

2.修改数据库配置,授予192.168.1.253以访问权限。这里只需授予这个IP就行了。如果不授予,PHP将不能访问数据库;如果授予范围过广,将会给你的系统带来潜在的安全风险。

你没要读取的,我没写。用的MySQL数据库

DROP TABLE IF EXISTS `t_song_file`

CREATE TABLE `t_song_file` (

`id` int(11) NOT NULL AUTO_INCREMENT,

`file_name` varchar(50) DEFAULT NULL,

`file` blob,

PRIMARY KEY (`id`)

) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8

package com.song.test

import java.io.File

import java.io.FileInputStream

import java.io.InputStream

import java.sql.Connection

import java.sql.PreparedStatement

import com.song.dao.DBUtil

public class InputStreamInDB {

public static void main(String[] args) throws Exception {

Connection conn=DBUtil.getConnection()

String sql="insert into t_song_file(file_name,file) values(?,?)"

PreparedStatement ps=conn.prepareStatement(sql)

ps.setString(1, "hello.zip")

ps.setBlob(2, getFileInputStream("C:/Users/songjunliang/Desktop/hello.zip"))

int tag=ps.executeUpdate()

if(1==tag)

{

System.out.println("success")

}

ps.close()

conn.close()

}

public static InputStream getFileInputStream(String filePath) throws Exception

{

File file=new File(filePath)

InputStream is=new FileInputStream(file)

return is

}

}


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/9991108.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存