CREATE TABLE myTable_yq(Document varbinary(max),yq varchar(20))

--SELECT @xmlFileName = 'c:\TestXml.xml'

INSERT INTO myTable(Document)
SELECT * FROM
OPENROWSET(BULK N'E:\20110330110932_61311.jpg', SINGLE_BLOB) AS XMLDATA

INSERT INTO myTable(Document)
SELECT * FROM
OPENROWSET(BULK N'D:\newviewhigh\serializable.txt', SINGLE_BLOB) AS XMLDATA

select * from myTable

select * from myTable_yq

import java.io.ByteArrayInputStream;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStream;
import java.io.ObjectInputStream;
import java.io.ObjectOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List; import com.viewhigh.base.databaseconnection.entity.DatabaseConnection;
import com.viewhigh.base.databaseconnection.service.IDatabaseConnectionService;
import com.viewhigh.common.util.DBHelper;
import com.viewhigh.base.databaseconnection.service.impl.DatabaseConnectionServiceImpl; public class InsertBlobTest { public void insert2zwdt(Connection conn) throws Exception{
//IDatabaseConnectionService databaseConnectionService = new DatabaseConnectionServiceImpl();
//DatabaseConnection targetDatabaseConnection = databaseConnectionService
// .getDatabaseConnectionById("40288a5a57d13f0b0157d140652e0003"); //Connection conn = new DBHelper(targetDatabaseConnection) //ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file));
// oos.writeObject(user);
ByteArrayOutputStream bos = new ByteArrayOutputStream(); //ObjectInputStream ins = new ObjectInputStream(oos); byte[] bytes = bos.toByteArray();
InputStream bis = new ByteArrayInputStream(bytes); //.getConnection();
Statement stmt = conn.createStatement();
PreparedStatement pstmt= null;
conn.setAutoCommit(false);// 取消自动提交 //================================
/*Connection conn = getConnection();
conn.setAutoCommit(false); // 设置手动提交
PreparedStatement pstmt=null; */
File file=new File("D:\\newviewhigh\\serializable.txt");
InputStream in = new FileInputStream(file);
System.out.println("test---------------->");
String sql="insert into myTable_yq(Document,yq) "
+ "values(?,?)"; pstmt=conn.prepareStatement(sql);
pstmt.setBinaryStream(1, bis, file.length());
pstmt.setString(2, "yangqing"); pstmt.execute();
conn.commit();
pstmt.close();
} public static void main(String[] args){ String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:sqlserver://localhost:1438;DatabaseName=ah_datai_yd"; String userName="sa"; String userPwd="sa"; try { Class.forName(driverName); Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接数据库成功"); InsertBlobTest ib = new InsertBlobTest(); try {
ib.insert2zwdt(dbConn);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } catch(Exception e) { e.printStackTrace(); System.out.print("连接失败"); } } }

  

import java.io.File;
import java.io.FileInputStream;
import java.io.InputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.Statement; import com.viewhigh.base.databaseconnection.entity.DatabaseConnection;
import com.viewhigh.base.databaseconnection.service.IDatabaseConnectionService;
import com.viewhigh.common.util.DBHelper;
import com.viewhigh.base.databaseconnection.service.impl.DatabaseConnectionServiceImpl; public class InsertBlob { //public void insert2zwdt(String xmlFileName, Long index) throws Exception{
public void insert2zwdt(Connection conn) throws Exception{
//IDatabaseConnectionService databaseConnectionService = new DatabaseConnectionServiceImpl();
//DatabaseConnection targetDatabaseConnection = databaseConnectionService
// .getDatabaseConnectionById("40288a5a57d13f0b0157d140652e0003"); //Connection conn = new DBHelper(targetDatabaseConnection)
//.getConnection();
Statement stmt = conn.createStatement();
PreparedStatement pstmt= null;
conn.setAutoCommit(false);// 取消自动提交 //================================
/*Connection conn = getConnection();
conn.setAutoCommit(false); // 设置手动提交
PreparedStatement pstmt=null; */
File file=new File("D:\\newviewhigh\\serializable.txt");
InputStream in = new FileInputStream(file);
System.out.println("test---------------->");
String sql="insert into myTable_yq(Document,yq) "
+ "values(?,?)"; pstmt=conn.prepareStatement(sql);
pstmt.setBinaryStream(1, in, file.length());
pstmt.setString(2, "yangqing");
/* pstmt.setInt(1, index.intValue());
pstmt.setString(2, exData.getStSource());
pstmt.setString(3, exData.getStKey());
pstmt.setString(4, exData.getStVersion());
pstmt.setString(5, exData.getStValue());
pstmt.setString(6, exData.getStOp());
pstmt.setString(7, exData.getStMemo());
pstmt.setBinaryStream(8, in, file.length());
pstmt.setString(9, exData.getStDest()); */ pstmt.execute();
conn.commit();
pstmt.close();
} /*public void insert2own(ExData exData, String xmlFileName, Long index) throws Exception{
File file=new File(xmlFileName);
InputStream in = new FileInputStream(file); DataSending dataSending = new DataSending();
dataSending.setNmSeqId(index.intValue());
dataSending.setStSource(exData.getStSource());
dataSending.setStKey(exData.getStKey());
dataSending.setStVersion(exData.getStVersion());
dataSending.setStValue(exData.getStValue());
dataSending.setStOp(exData.getStOp());
dataSending.setStMemo(exData.getStMemo());
dataSending.setSendDate(new Date());
byte[] data=new byte[]{};
data=inputStreamToByte(in);
dataSending.setBlData(data);
dataSending.setStDest(exData.getStDest());
dataSendingDao.save(dataSending); } */ /*private byte[] inputStreamToByte(InputStream in) throws IOException{
ByteArrayOutputStream baos=new ByteArrayOutputStream();
int ch;
while((ch=in.read())!=-1){
baos.write(ch);
}
byte[] data=baos.toByteArray();
baos.close();
return data;
} */ public static void main(String[] args){ /*InsertBlob ib = new InsertBlob(); try {
ib.insert2zwdt();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/ String driverName="com.microsoft.sqlserver.jdbc.SQLServerDriver"; String dbURL="jdbc:sqlserver://localhost:1438;DatabaseName=ah_datai_yd"; String userName="sa"; String userPwd="sa"; try { Class.forName(driverName); Connection dbConn=DriverManager.getConnection(dbURL,userName,userPwd); System.out.println("连接数据库成功"); InsertBlob ib = new InsertBlob(); try {
ib.insert2zwdt(dbConn);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } catch(Exception e) { e.printStackTrace(); System.out.print("连接失败"); } } }

  

sqlserver二进制存储的更多相关文章

  1. mssql sqlserver 可以存储二进制数据的字段类型详解

    转自: http://www.maomao365.com/?p=6738 摘要: 下文将从数据库的数据类型着手,剖析在sqlserver数据库中可以存储二进制数据的数据类型,如下所示: mssql s ...

  2. Sqlserver数据库存储路径的修改

    Sqlserver数据库存储路径的修改 Sqlserver数据库存储路径问题:本系统sqlserver路径默认是存储在C盘目录下的,由于数据会慢慢变大和避免重装系统数据丢失等问题,最好手动将路径设置在 ...

  3. C/C++ 图像二进制存储与读取

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/50782792 在深度学习时,制作样本数 ...

  4. 二进制、十六进制理解及int类型二进制存储方式

    二进制 0000 0000 0000 0000 0000 0000 0000 0001 // 2^0 0000 0000 0000 0000 0000 0000 0000 0010 // 2^1 00 ...

  5. 深入理解Sqlserver文件存储之页和应用 (转)

    我们每天都在使用数据库,我们部门使用最多的关系数据库有Sqlserver,Oracle,有没有想过这些数据库是怎么存放到操作系统的文件中的?有时候为了能够设计出最优的表结构,写出高性能的Sqlserv ...

  6. float浮点数的二进制存储方式及转换

    int和float都是4字节32位表示形式.为什么float的范围大于int? float精度为6-7位.1.66*10^10的数字结果并不是166 0000 0000 指数越大,误差越大. 这些问题 ...

  7. xml存储图片 二进制存储图片

    一.保存图片到XML文件 /// <summary> /// 保存图片到XML文件 /// </summary> private void UploadImageToXml() ...

  8. java实现文件转换成二进制存储与取出

    一.功能描述: 将文件转成二进制数据放入数据库中,需要的时候,便可以取出安装与使用. 二.数据库: 建立一个数据库字段存放转成二进制的图片,这个字段有一个要求就是要设置成blob类型的 CREATE  ...

  9. FMDB存储模型对象(以二进制存储)用NSKeyedArchiver archivedDataWithRootObject序列号,NSKeyedUnarchiver unarchiveObjectWithData反序列化(重点坑是sql语句@"insert into t_newsWithChannel (nwesName,newsType) values (?,?)")一定要用占位符

    交友:微信号 dwjluck2013 一.封装FMDB单例 (1)JLFMDBHelp.h文件 #import <Foundation/Foundation.h> #import < ...

随机推荐

  1. bzoj4383(拓扑排序)

    给定一个长度为n的正整数序列a,每个数都在1到10^9范围内,告诉你其中s个数,并给出m条信息,每条信息包含三个数l,r,k以及接下来k个正整数,表示a[l],a[l+1],...,a[r-1],a[ ...

  2. sscanf、sprintf、stringstream常见用法

    转载自:https://blog.csdn.net/jllongbell/article/details/79092891 前言: 以前没有接触过stringstream这个类的时候,常用的字符串和数 ...

  3. CodeFroces-- Feel Good

    题目大意:给出一段无序数组找出任意 一段区间和*这段区间的最小值 使这个值最大 栈的经典问题 用栈预处理出当前ai 为这块区间最小值的时候 的区间范围(L 和R) #include<bits/s ...

  4. Arch Linux下Visual Stdio Code在格式化C代码时报错

    libtinfo.so.5: cannot open shared object file: No such file or directory Arch Linux下Visual Stdio Cod ...

  5. 【SPOJ10707】COT2 - Count on a tree II

    题目大意:给定一棵 N 个节点的无根树,每个节点有一个颜色.现有 M 个询问,每次询问一条树链上的不同颜色数. 题解:学会了树上莫队. 树上莫队是将节点按照欧拉序进行排序,将树上问题转化成序列上的问题 ...

  6. 关于 HDC 的释放

    GetDC和ReleaseDC的调用配对,CreateDC和DeleteDC的调用配对. GetDC是从窗口获取现有的DC,而CreateDC是创建DC,所以ReleaseDC和DeleteDC的作用 ...

  7. Fiddler 只取所需

    Fiddler每次打开的时候都会打开十多个会话,期望只想抓取自己想要的请求.   1)User Filters:启用过滤器 2)在Filers面板中勾选“Use Filters”,并在Hosts区域, ...

  8. okhttp 内网可以有,但外网访问数据返不回来,代码一样

    :1.问题点在于 下图红框里写成 text/html了,需要改成application/json,造成的问题有:unexpected end of stream  这个是406错误:加上日志之后okh ...

  9. 利用sys打印进度条

    在很多常见中,需要对当前处理的进度进行显示,这个时候就需要进度条了,在python中,也有封装好的进度条模块,当然,也可以自己编写一个简单的进度条来帮助理解进度条的实现. 首先,需要理解一个概念,就是 ...

  10. FFT笔记

    蝴蝶操作和Rader排序 蝴蝶操作的定义: 雷德(Rader)算法 (Gold Rader bit reversal algorithm) 按自然顺序排列的二进制数,其下面一个数总是比其上面一个数大1 ...