最近更新   设为主页   CSharp读写SQL Server数据库中的Image列 加入收藏  
计算机基础教程网 本站招聘  
 [投稿登 陆]    [问题求解或论坛登 陆]
ITWEN首页操作系统网络冲浪办公软件网页设计图形图象认证考试程序设计数据库其它文章交流论坛  
  当前位置:ITWen >>  C#语言  >>  CSharp读写SQL Server数据库中的Image列
CSharp读写SQL Server数据库中的Image列
作者:计算机基础教程网    来源:www.itwen.com    更新时间:2006-02-19
[ 收藏此页到: 天天 | 和讯 | 博采 | ViVi | 狐摘 | 我摘 ]  
  


数据库表结构:
IF EXISTS (SELECT name FROM sysobjects WHERE name = 'Content' AND type = 'U')
DROP TABLE Content
GO
create table Content
(
--内容ID
Id bigint IDENTITY(1,1) NOT NULL,
--内容
data image default null,
CONSTRAINT PK_ContentId PRIMARY KEY CLUSTERED (Id)
)
GO
const String cnnstr = "Provider=SQLOLEDB.1;User ID=sa;Password=;Initial Catalog=MyDb;Data Source=(local)";
写入
public bool WriteContent(byte [] data)
{
OleDbConnection conn = new OleDbConnection(cnnstr);
String mySelectQuery = "insert into Content(data)values(?)";
OleDbCommand myCommand = new OleDbCommand(mySelectQuery, conn);
myCommand.CommandTimeout = 60;

OleDbParameter param = new OleDbParameter("@data", OleDbType.VarBinary, data.Length);
param.Direction = ParameterDirection.Input;
param.Value = data;
myCommand.Parameters.Add(param);
bool ret = false;

try
{
conn.Open();
myCommand.ExecuteNonQuery();
ret = true;
}
catch(Exception e)
{
String msg = e.Message;
}
finally
{
//关闭数据库连接
if((conn != null) && (conn.State != ConnectionState.Closed))
{
conn.Close();
}
}
return ret;
}
读出
private byte [] ReadContent(Int64 contentId)
{
byte [] buff = null;
OleDbConnection conn = new OleDbConnection(cnnstr );
String queryStr = String.Format("select data from Content where Id={0}", contentId);
OleDbCommand myCommand = new OleDbCommand(queryStr, conn);
myCommand.CommandTimeout = 60;
OleDbDataReader reader = null;
long dataLen = 0L;
try
{
conn.Open();
reader = myCommand.ExecuteReader();
if( reader.Read() )
{
//得到要读的数据长度,注意buff必须是空的引用
dataLen = reader.GetBytes(0, 0, buff, 0, 1);
//分配缓冲区
buff = new byte[dataLen];
//读数据
dataLen = reader.GetBytes(0, 0, buff, 0, (int)dataLen);
}
}
catch(Exception e)
{
internalError(e);
String msg = e.Message;
}
finally
{
//关闭数据集
if(reader != null && !reader.IsClosed)
reader.Close();
//关闭数据库连接
if((conn != null) && (conn.State != ConnectionState.Closed))
{
conn.Close();
}
}
return buff; }(完)计算机基础教程网


  引用提示:
  内容页面:CSharp读写SQL Server数据库中的Image列 --- C#语言
  作者:计算机基础教程网
  来源:www.ITWEN.com 计算机基础教程网
  

  版权申明:
  本网站所有内容,未经注明的,版权一律属于计算机基础教程网(ITWEN.com)制作署所有。转载引用本网站的原创文章,请务必注明信息来源,标明“计算机基础教程网(ITWEN.com)”字样。
  计算机基础教程网(ITWEN.com)依法保护知识产权,如果我们的文章有涉及或侵犯您的有关权益,请即时与我们联系, 注明网址及文章,我们会即时处理或删除, 感谢您的合作!   


】 【返回站点首页】【打印本页】【关闭本页
     资料搜索
     热门文章
·vs.net 2005中文版下载地
·IE无法播放flash的解决方法
·常用的加密解密技术
·流光的使用教程
·Sybase数据库简介
·socket编程原理
·光驱维修三板斧
·千兆双绞线交叉线做法
·SQL Server SQL语句导
·Adaptive Server A
·Sybase12.5下载地址(全)
·什么是数据库管理系统
·sybase 珍藏系列之一(fro
·Win2000启动盘及系统恢复
·SVN學習筆記
     前面文章
·ORACLE中LOB字段的使用和维
·Oracle7.X 回滚表空间数据
·如何快速启动oracle8iSQL
·Windows硬件冲突巧解决
·电脑高手常用技巧应用全接解
·修改Windows任务栏的时间显示
·在LAN内架设简单的time se
·OA架构设计之启示
·VB6使用API下载文件
·激活程序的disabled的按钮
·C#语法入门1
·教你在C#中如何读写INI文件
·定时检测邮件并且自动转发的例子
·使程序在Windows任务管理器隐
·Internet Explorer
·Eric的数据分页(演示+代码)
·移动窗体

文章: CSharp读写SQL Server数据库中的Image列 已经被浏览了 次。
免责声明 | 关于我们 | 广告联系 | 友情链接 | 帮助设置 | 网站导航 | 最近更新 | 共同合作
计算机基础教程网(www.ITwen.com) 版权所有
copyright 2005-2006,All Rights Reserved
计算机基础教程网