`

JDBC读取写入SQLServer的大字段数据(IMAGE)

    博客分类:
  • Java
阅读更多
    static String driver = "com.microsoft.jdbc.sqlserver.SQLServerDriver";
    static String url = "jdbc:microsoft:sqlserver://192.168.0.202:1433;DatabaseName=test";
    static String user = "sa";
    static String passwd = "ps";

    public static void method() throws Exception {
        Connection conn = null;
        try {
            Class.forName(driver);
            conn = DriverManager.getConnection(url, user, passwd);
            int op = 0;
            // 插入
            if (op == 0) {
                PreparedStatement ps = conn.prepareStatement("insert into tb_file values(?,?)");
                ps.setString(1, "test.doc");
                InputStream in = new FileInputStream("d:/test.doc");
                ps.setBinaryStream(2, in, in.available());
                ps.executeUpdate();
                ps.close();
            } else {
                // 取出
                PreparedStatement ps = conn.prepareStatement("select * from tb_file where filename = ?");
                ps.setString(1, "aaa.exe");
                ResultSet rs = ps.executeQuery();
                rs.next();
                InputStream in = rs.getBinaryStream("filecontent");
                System.out.println(in.available());
                FileOutputStream out = new FileOutputStream("d:/test.doc");
                byte[] b = new byte[1024];
                int len = 0;
                while ((len = in.read(b)) != -1) {
                    out.write(b, 0, len);
                    out.flush();
                }
                out.close();
                in.close();
                rs.close();
                ps.close();
            }
        } catch (Exception ex) {
            ex.printStackTrace(System.out);
        } finally {
            if (null != conn)
                conn.close();
        }
    }

 

分享到:
评论

相关推荐

    java读取sqlserver image字段.docx

    ### Java读取SQL Server Image字段知识点详解 #### 一、背景与目的 在数据库应用开发过程中,经常会遇到需要存储图片等二进制数据的情况。SQL Server 提供了`IMAGE`类型来存储大容量的二进制数据。然而,如何有效地...

    sql server中的image类型的数据导出到oracle的clob字段中

    为了将 SQL Server 中的 Image 类型数据导出到 Oracle 的 CLOB 字段中,我们需要使用Java 语言和 JDBC 驱动程序。下面是一个示例代码,演示如何将 SQL Server 中的 Image 类型数据导出到 Oracle 的 CLOB 字段中: ...

    Struts中用Action向SQL Server 的Image字段上传文件[原创].rar

    在本教程中,我们将探讨如何利用Struts Action来处理文件上传,并将文件存储到SQL Server数据库的Image字段中。 首先,我们需要理解Action在Struts框架中的角色。Action是业务逻辑的载体,接收用户请求,处理数据,...

    用Java流实现对SQL Server 2000中多媒体数据的存取.pdf

    文章《用Java流实现对SQL Server 2000中多媒体数据的存取》主要探讨了如何利用Java语言以及JDBC/ODBC桥接口技术实现对SQL Server 2000数据库中多媒体数据字段的存取操作。本文将详细阐述以下几个关键知识点: 1. ...

    mysql,sqlserver,oracle三种数据库的大对象存取

    在SQL Server中,处理大对象数据通常使用`IMAGE`类型(SQL Server 2005及以前版本)或`VARBINARY(MAX)`、`IMAGE`(SQL Server 2008及以后版本)。`IMAGE`类型可以存储的最大数据量理论上不受限,但实际受物理存储...

    oracle mysql sqlser2000对大数据对象的操作

    然而,由于SQL Server 2000已不再得到官方支持,开发者通常会倾向于使用更新的版本,如SQL Server 2012或更高版本,这些版本引入了VARBINARY(MAX)和VARCHAR(MAX)来替代IMAGE和TEXT,以提供更大的灵活性和更好的性能...

    mysql,sqlserver,oracle三种数据库的大对象存取解析.docx

    总结来说,MySQL、SQL Server和Oracle都提供了专门的字段类型来处理大对象数据。在存取大对象时,开发者需要注意选择合适的数据类型,调整数据库配置以适应大文件,并使用相应的API进行操作。在实际应用中,应根据...

    java读取slserverimage字段.doc

    String url = "jdbc:sqlserver://localhost:1433;databaseName=myDatabase"; String user = "username"; String password = "password"; Connection conn = DriverManager.getConnection(url, user, password); ```...

    将图片存放进数据库(转换成二进制流)

    5. **从数据库读取**:当需要显示图片时,执行SQL查询语句,从BLOB字段中获取图片的二进制数据。 6. **转换回图片**:将从数据库获取的二进制数据转换回图片文件,这可以通过编程语言的相应库函数完成。例如,Java...

    数据库(sql2000)里存储图片源码

    4. **插入数据**:然后,使用Java的JDBC API连接到SQL Server,创建`PreparedStatement`,并设置参数为16进制字符串。例如: ```java String insertSql = "INSERT INTO Images (ImageData) VALUES (?)"; ...

    图片以二进制存取数据库

    在SQL Server中,这种类型被称为`VARBINARY(MAX)`,它允许存储最多2^31-1个字节的数据,足以容纳大部分图片文件。 存入图片的步骤如下: 1. **读取图片文件**:使用编程语言(如Java、Python、C#)的内置函数读取...

    图片存入sql数据库

    在SQL Server中,可以创建一个包含BLOB字段的表来存储图片数据。 1. 创建表结构: 假设我们创建一个名为`ImagesTable`的表,其中包含`ImageID`作为主键和`ImageData`作为BLOB字段。 ```sql CREATE TABLE ...

    J2EE-JDBC学习笔记

    首先在数据库中创建`BLOB`类型字段(SQL Server中为`IMAGE`)。处理图像文件时,需注意大小限制,超过一定量级(如64K)应考虑使用`BIGBLOB`类型。 存储时,可将文件转换为字节流,通过`setBinaryStream()`方法...

    Java访问数据库存取图片

    String url = "jdbc:sqlserver://localhost:1433;databaseName=YourDatabase"; String username = "YourUsername"; String password = "YourPassword"; Connection conn = DriverManager.getConnection(url, ...

    图片存储到Access数据库中

    首先,需要添加对应的JDBC驱动(如Microsoft JDBC Driver for SQL Server)到项目的类路径。然后,使用`PreparedStatement`或`Statement`对象的`setBinaryStream`方法将图片文件读取为字节流并写入BLOB字段。 ```...

    Jsp_Uploading_MySQL.rar_mysql image

    1. 图片数据需转换成字节数组,可以使用`FileInputStream`读取文件,然后使用`BufferedImage`进行处理,最后用`ImageIO.write()`方法将其写入`ByteArrayOutputStream`。 2. 数据库中的BLOB字段可能有大小限制,需要...

    将图片保存到数据库!

    这通常是通过编程语言(如Python、Java、C#等)与数据库API(如SQL Server的ADO.NET,MySQL的JDBC,或者SQLite的sqlite3模块)进行交互来实现的。下面将详细介绍这个过程和相关知识点。 1. **二进制数据类型**:在...

    jsp连数据库动态显示图片

    假设我们有一个名为`images`的表,其中包含`image_data`字段存储图片的BLOB类型数据。我们可以使用PreparedStatement来执行查询: ```java String sql = "SELECT image_data FROM images WHERE id = ?"; ...

    jsp实现上传图片功能

    这通常涉及到读取Part对象的InputStream,然后写入到目标文件流。同时,为了防止文件名冲突,可以生成唯一的文件名。 5. 数据库记录:保存图片的同时,我们还要将图片的存储路径存入数据库。可以创建一个javabean来...

    Developer开发文章

    这些函数提供了基本的文件操作能力,如打开文件、读取文件内容、写入数据等。 #### 9. 如何改变FORM(FMX模块)运行时的title? 可以使用 `FORM-SET-TITLE` 函数来更改FORM的标题。例如,在 `INITIALIZE` 触发子中...

Global site tag (gtag.js) - Google Analytics