登峰之道---简约而不简单
分享阳光,分享快乐
插入Blob字段的为空,每次插入两条记录
程序是这样的
HttpPostedFile UpFile =this.Request.Files[0] ; //UP_FILE.PostedFile HttpPostedFile对象,用于读取图象文件属性
FileLength = UpFile.ContentLength; //记录文件长度
string filePath = UpFile.FileName;
OracleConnection conn = null;
Stream StreamObject = null;
try
{
if (FileLength == 0)
{ //文件长度为零时
txtMessage.Text = "<b>请你选择你要上传的文件</b>";
}
else
{
//写到特定位置
      /* string tmpFileName = UpFile.FileName;
        string myFileName = tmpFileName.Substring(tmpFileName.LastIndexOf("."));
        string myFileMimeType = UpFile.ContentType;
        UpFile.SaveAs(this.Server.MapPath(@"Images\"+ myFileName));*/


byte[] FileByteArray = new byte[FileLength]; //图象文件临时储存Byte数组
StreamObject = UpFile.InputStream; //建立数据流对像

//读取图象文件数据,FileByteArray为数据储存体,0为数据指针位置、FileLnegth为数据长度
StreamObject.Read(FileByteArray,0,FileLength);


conn = new OracleConnection(comm.Constant.OraString);
string SqlCmd = " insert into qjbtest(ID,thebmp)values(9,:mid)";

conn.Open();
OracleCommand myCommand = new OracleCommand();

myCommand.CommandText = SqlCmd;
myCommand.Parameters.Add(":mid",OracleType.Blob,FileLength);
myCommand.Parameters[":mid"].Value = FileByteArray;
myCommand.Connection = conn;

int num = myCommand.ExecuteNonQuery();

conn.Close();

if(num > 0)
{

txtMessage.Text = "<p><b>OK!你已经成功上传你的图片</b>";//提示上传成功

}
else
{
txtMessage.Text = "<p><b>SORRY!你的图片上传出错</b>";//提示上传出错

}
}
}
catch (Exception ex)
{
Response.Write(txtMessage.Text = ex.Message);
Response.End();
}
  finally
{
if(conn!=null)
{
conn.Close();

}

}
posted on 2005-06-17 13:59  登峰  阅读(196)  评论(0)    收藏  举报