当前位置:  技术问答>java相关

有新问题麻烦大家。请问如何将大文件写入SQLServer2000数据库?

    来源: 互联网  发布时间:2015-09-09

    本文导语:  请问如何将大文件写入SQLServer2000数据库?谢谢大家了! | 参考: package demo; import java.sql.*; import java.io.*; import oracle.sql.BLOB; import oracle.jdbc.*; //此程序的作用:向test(字段为name varchar2;b blo...

请问如何将大文件写入SQLServer2000数据库?谢谢大家了!

|
参考:

package demo;

import java.sql.*;
import java.io.*;
import oracle.sql.BLOB;
import oracle.jdbc.*;

//此程序的作用:向test(字段为name varchar2;b blob)库,插入一个文件(read.txt),再将其从库中读出,写到ok.txt中

public class orablob
{
  public void orablob()
{}
  public static void insertblob()
  {
  try
  {
//首先是将文件输入到数据库。
    Class.forName("oracle.jdbc.driver.OracleDriver");//注册数据库引擎。
    Connection conn= DriverManager.getConnection("dburl=jdbc:oracle:thin:@yf:1521:kjb", "kjb", "KJBMostJ2EEOraDB");//建立连接串
    conn.setAutoCommit(false);//关闭自动提交,以提高性能。
    Statement stmt=conn.createStatement();//建立会话
   
   try
   {
     stmt.execute ("drop table test");
   }
   catch (SQLException e)
   {
     // An exception could be raised here if the table did not exist already.
   }
  stmt.execute ("create table test (fname varchar2(600),bx blob)");

    File file=new File("D:\test\Icon.jpg");
    InputStream is=new FileInputStream(file);//创建输入流,将外部文件输入到InputStream 中。
    System.out.print(file.length());
    byte[] blobByte=new byte[is.available()];
   is.read(blobByte);
   is.close();
    PreparedStatement pstmt=conn.prepareStatement("INSERT INTO TEST  VALUES (?,?)");
    pstmt.setString(1,file.getName());
    pstmt.setBinaryStream(2,(new ByteArrayInputStream(blobByte)), blobByte.length);
    pstmt.executeUpdate();//将文件流插入到数据库中。
    pstmt.close();

//以下是从库中读取文件。
    ResultSet rset=stmt.executeQuery("SELECT * from test");
    while (rset.next())
      {// Get LOB locators into Java wrapper classes.
        BLOB blob=((OracleResultSet)rset).getBLOB(2);//获取文件字段。
        // int chunk=blob.getChunkSize();
       int chunk=blob.getChunkSize();
      byte [] buffer=new byte[chunk];
        System.out.println(chunk);

        File binaryFile=new File("D:\test\Ora.java");
        FileOutputStream fileoutstream=new FileOutputStream(binaryFile);//创建文件输出流。
        InputStream instream=blob.getBinaryStream();//建立输入流,并将字段comment的值以流的形式,放入instream变量。
        instream.read(buffer,0,chunk);//将文件流存入变量buffer,以buffer为中转
        fileoutstream.write(buffer,0,chunk);//将buffer写入文件输出流。
        System.out.println("write ok!");
        instream.close();//关闭流
        fileoutstream.close();
      }
    rset.close();
    stmt.close();
    conn.close();
    System.out.print("ok");
  }
  catch(Exception ee)
  {
      System.out.println(ee.getMessage());
  }
  }
      public static void main(String args[])
    {
     insertblob();
}

}

|
首先在SQL里建立Image field,来Save你要保存的大文件.
然后呢...........你的问题点数实在太少了,如果提高问题点数,我保证有问必答,(仅限此题我刚刚做了这方面的工作绝对保证解决问题.
  
  如果你因为不能给多分请说明,一样可以帮你解决问题

    
 
 

您可能感兴趣的文章:

  • 请教:写入队列消息的长度问题
  • 中文问题:我的数据库中,中文写入没有问题,但中文却不能正常读出。(sqlserver2000)
  • 日志写入命名管道的权限问题
  • 多进程问题 子进程读取内容 读完挂起,父进程写 写入后唤醒子进程
  • 写入mtd的囧问题
  • 写入到XML文件的问题
  • samba匿名可写入有问题
  • linux下文件写入问题。
  • tocat4.0,ud4.0,从ACCESS里读中文没有问题,但是写入的都是乱码?/??
  • shell:sql问题,如何shell循环将不同表数据写入文件中...
  • 请教一个文本写入的问题。请大家帮帮忙。。。。
  • 将复选框值赋于一变量写入一数据库问题
  • 一个写入多个读出的同步问题
  • 向oracle的BLOB字段写入数据时出现的问题,救命!
  • 列位大侠,帮我看看这个关于中文写入的问题!!!
  • 一个textarea写入读出的简单问题,在线等待
  • 有关字符数据写入文件的问题
  • SOS!!如何读取写入类型为Text字段的内容,数据库为MS Sql Server,分不是问题,不够再加,只要能解决!
  • 遇到一个棘手的问题:我想通过jsp程序,能在另一个jsp文件中写入回车换行符号(不要"n")
  • 又是菜鸟问题:选择哪一种编码,才能把汉字写入MySQL数据库?
  • (100分)用Microsoft jdbc Driver for sqlserver2000(type4)访问sqlserver2k的问题,help!
  • 在sqlserver2000时中文问题。
  • applet用jdbc链接SQLServer 2000的问题
  • Resin+Jsp+Sqlserver2000的问题!在线等候!
  • 关于用jdbc连接sqlserver2000的问题(在线)
  • 关于数据源的问题(jbuilder和 MS SQLServer 2000)
  • SQLServer 2000 Driver for JDBC 问题 , 在线 !! 解决即给分
  • JDBC连接SQLServer数据库问题!!!
  • 有关SQLSERVER 2000的JDBC驱动的问题
  • SQLSERVER的排序问题结果不是想要的
  • sqlserver附加.mdf权限问题解决
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 初写MAKEFILE遇到问题,麻烦大家帮忙。
  • 新手的问题,很简单的,麻烦各位高手指点!:)
  • 问Linux高手一个安卓系统的问题,麻烦回答一下,谢谢!
  • unix 问题,麻烦各位了。
  • 在装sis315时碰上麻烦问题!!!!!!!!!!!!!
  • grub老问题麻烦兄弟
  • 麻烦高手看一下我的问题
  • SQLSERVER的排序问题结果不是想要的 iis7站长之家
  • java编程的一些小问题,麻烦帮忙看看
  • 最近遇到一个问题,还麻烦各位大大指点一下。
  • 关于时间的问题 麻烦各位过来 帮我看一下
  • To:are2000(土狗),谢谢你,那个问题已经解决了,如果我有什么不懂的,还要麻烦你呀!哈哈!
  • 初学linux命令时 遇到的一个小问题, 麻烦各位进来帮我解答下。。。。。
  • 关于Servlet编译的问题,麻烦那位帮我分析一下
  • 一个简单的问题,麻烦帮我解决一下。
  • 急急急:::ftp服务器搭建问题,麻烦看下,谢了
  • EPOLLHUP问题,麻烦高手回答下
  • 敬请高人:还是linux的安装问题,谁让它太麻烦呢!!
  • 一个关于shell的问题,麻烦帮忙解释一下
  • 奇怪问题????抑或菜鸟问题!!!但麻烦给个理由
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • 简单问题简单问题简单问题简单问题
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 小问题,急问题,重大问题!!!
  • sharepoint 2010中item.Update()和item.SystemUpdate 修改数据版本问题解决
  • 弱弱的一问,linux下的中文问题及网络问题,分不是问题
  • 八个问题帮你快速了解Docker
  • 请教两个小问题:一个cgywin下使用vi的问题,另一个socket的问题
  • 错误:将'const x'作为'x'的'this'实参时丢弃了类型限定问题解决
  • 网页的编码问题!或者java的编码问题,由此引出一条解决中文问题的思路
  • nginx Windows版相关问题及使用说明


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3