有关二制大对象Blob的使用

 
Byte[] blob = null;
FileStream fs = null;
const string sConn = "server=(local);Initial
Catalog=Northwind;UID=ctester;PWD=password";
try {
SqlConnection conn = new SqlConnection(sConn);
SqlCommand cmd = new SqlCommand("SELECT Picture FROM Categories WHERE
CategoryName='Builder'", conn);
cn.Open();
SqlDataReader sdr = cmd.ExecuteReader();
sdr.Read();
blob = new Byte[(sdr.GetBytes(0, 0, null, 0, int.MaxValue))];
sdr.GetBytes[0, 0, blob, 0, blob.Length);
sdr.Close();
conn.Close();
fs = new FileStream("c://Builder.doc", FileMode.Create, FileAccess.Write);
fs.Write(blob, 0, blob.Length);
fs.Close();
} catch (SqlException e){
Console.WriteLine("SQL Exception: " + e.Message);
} catch (Exception e) {
Console.WriteLine("Exception: "+ e.Message);
}

Q 老师,请问一下,对于大数据量分页的时候,用DataReader,还是用DataAdapter效率高?
A:DataReader提供一个快速、只读、向前的数据流,因此它的访问效率比DataAdapter要高。

Q 建立一个与连接池中的参数不一样,是不是要重新创建?
A:需要重新创建。

Q 如何执行返回值的存储过程,并且如何显示结果?
A: 用存储过程的output来返回。

Q dataset 可不可以把多个表中的数据直接 FILL EXCEl ( dataset 格式 ) chenxl@mail.ln-hr.com :jackyzhao213@hotmail.com
A: 有关 C# 操作 Excel 的代码已经回复到邮箱中了。

Q: 请问怎么把一个表的数据,约束,父子表关系等一起赋值到数据集(或数据表),谢谢
A: 向 DataSet 添加多个结果集时,每个结果集都放在一个单独的表中。当创建 DataTable 对象时,Fill 操作通常只创建列名元数据。但是, 你能通过设置数据适配器的 MissingSchemaAction 属性来重载 Fill 的默认的行为。例如,要使 Fill 建立的表包含主键信息、唯一约束、列属性、是否允许空值、列的最大长度、只读列、自动增加列等等,只需要指定 DataAdapter.MissingSchemaAction MissingSchemaAction.AddWithKey 。作为选择,你能在调用 DataAdapter.Fill 前调用 DataAdapter.FillSchema 来确保数据集被填充时大纲已经准备好了。
  调用 FillSchema 将再次访问服务器并检索附加的大纲信息。为了提高性能,最好指定数据集的大纲,或者在调用 Fill 前设置数据适配器的 MissingSchemaAction

Q: DataSet 修改过的数据 Update 到数据库中 , 有什么自动话的方法 ? 必须都写 SQL?
A: DataAdapter Updata 方法。详细可以参考有关 DataAdapter 使用的资料。

Q: 怎么使用 ADO.NET Excel 表到入数据库?
A:    string strFileName ;//Excel 文件名称
         DataSet myDataset = new DataSet();
         OleDbConnection con = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;"
                                     + "Data Source="+strFileName+";"+"Extended Properties='Excel 8.0;'");
         OleDbCommand Command = new OleDbCommand("SELECT       * FROM [Sheet1$]",con);
         System.Data.OleDb.OleDbDataAdapter myData = new OleDbDataAdapter(Command);
         myData.Fill(myDataset);
         数据填充到 DataSet 中后,你就可以把它写入数据库了。 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值