搜档网
当前位置:搜档网 › C#图片存入数据库并读取显示在picturebox中

C#图片存入数据库并读取显示在picturebox中

C#图片存入数据库并读取显示在picturebox中
C#图片存入数据库并读取显示在picturebox中

实现功能:把图片及人员信息存入数据库并可通过编号查找显示在picturebox中,同时实现照片及信息的更新。数据库构建:

PhotoID int 4;EmployeeNO Varchar 20;EmployeeName Varchar 50 ;PhotoContent image 16;Ramrk text 16 点击“选择图片”打开一个对话框,选择一个图片放到picturebox中预览

private void button1_Click(object sender, EventArgs e)

{

using (OpenFileDialog ofd = new OpenFileDialog())

{

ofd.Title = "请选择要插入的图片";

ofd.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP";

ofd.CheckFileExists = true;

ofd.CheckPathExists = true;

ofd.Multiselect = false;

if (ofd.ShowDialog(this) == DialogResult.OK)

{

txtfile = ofd.FileName;

this.pb.ImageLocation = ofd.FileName;

}

}

}

点击“按钮”,调用update方法,以实现信息及照片的存储和更改

private void btSave_Click(object sender, EventArgs e)

{

if (txtfile == "")

{

HrBll.AppFrame.BllPhoto.update(txtRemark.Text,txtEmpNO .Text);

}

else

{

Update(txtfile, txtRemark.Text, txtEmpNO.Text);

}

Empty();

}

Update方法的代码

Private void Update(string fullpath,string remark,string empno)

{

FileStream fs = new FileStream(fullpath, FileMode.Open);

byte[] imagebytes = new byte[fs.Length];

BinaryReader br = new BinaryReader(fs);

imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length));

string SQLstr = string.Format("update T_Photo set PhotoContent=@photo,Remark=@remark where EmployeeNO=@empno");

SqlCommand com = new SqlCommand(SQLstr, Common.DataAccess.GetConn());

com.Parameters.Add("photo", SqlDbType.Image);

com.Parameters["photo"].Value = imagebytes;

com.Parameters.Add("empno",SqlDbType.Char);

com.Parameters["empno"].Value = empno;

com.Parameters.Add("remark", SqlDbType.Char);

com.Parameters["remark"].Value = remark;

com.ExecuteNonQuery();

Common.DataAccess.GetConn().Close();

MessageBox.Show("更新成功", MessageBoxButtons.OK, https://www.sodocs.net/doc/0a1356442.html,rmation);

}

点击“查找”按钮,调用Find和img方法实现查找信息,并把文本信息显示在textbox中,照片显示在picturebox中

private void tbFind_Click(object sender, EventArgs e)

{

if (cbItem.Text == "")

{

MessageBox.Show("请输入员工编号", "提示o?", MessageBoxButtons.OK, https://www.sodocs.net/doc/0a1356442.html,rmation);

}

else

{

string sql = string.Format("select count(*) from T_Photo where EmployeeNO='{0}'", cbItem.Text);

SqlCommand cmd = new SqlCommand(sql, Common.DataAccess.GetConn());

int i = (int)cmd.ExecuteScalar();

if (i == 1)

{

txtEmpNO.Text = "";

txtName.Text = "";

txtRemark.Text = "";

pb.Image = null;

dataGridView1.DataSource =.Find(cbItem.Text);

txtEmpNO.Text =.Find(cbItem.Text).Rows[0][1].ToString();

txtName.Text =.Find(cbItem.Text).Rows[0][2].ToString();

txtRemark.Text =.Find(cbItem.Text).Rows[0][3].ToString();

pb.Image =.img(txtEmpNO.Text, txtName.Text);

}

else

{

MessageBox.Show("此员工不存在", "提示o?", MessageBoxButtons.OK, https://www.sodocs.net/doc/0a1356442.html,rmation);

}

}

}

Find方法(即返回一个datatable)

Private static DataTable Find(string s)

{

return Common.DataAccess.GetDatatable("select T_Photo.PhotoID,T_Photo.EmployeeNO,T_Employee.EmployeeName,"

+ "T_Photo.Remark from T_Photo inner join T_Employee on T_Photo.EmployeeNO=T_Employee.EmployeeNO where T_Photo.EmployeeNO= " + s);

}

Img方法

Private static Image img(string txtno,string txtname)

{

string sql1 = string.Format("select PhotoContent from T_Photo where EmployeeNO='{0}'", txtno);

SqlCommand cmd1 = new SqlCommand(sql1, Common.DataAccess.GetConn());

SqlDataReader dr = cmd1.ExecuteReader();

while (dr.Read())

{

if (dr["PhotoContent"]== System.DBNull.Value)

{

string message = string.Format("没?有?D{0}的ì?照?片?,ê?请?添?¨a加¨?",txtname);

MessageBox.Show(message,"提?¨¢示o?",MessageBoxButtons.OK,https://www.sodocs.net/doc/0a1356442.html,rmation);

}

else

{

MemoryStream ms = new MemoryStream((byte[])dr[0]);

Image img = Image.FromStream(ms);

return img;

}

}

return null;

}

点击datagridview显示数据

private void dataGridView1_Click(object sender, EventArgs e)

{

txtEmpNO.Text = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[1].Value.ToString();

txtName.Text = dataGridView1.Rows[dataGridView1.CurrentCell.RowIndex].Cells[2].Value.ToString();

txtRemark .Text =dataGridView1 .Rows [dataGridView1 .CurrentCell .RowIndex].Cells[3].Value.ToString();

pb.Image =img(txtEmpNO.Text, txtName.Text);

button1.Enabled = true;

btSave.Enabled = true;

}

数据库图片的存储

1、引言 数据库应用程序,特别是基于WEB的数据库应用程序,常会涉及到图片信息的存储和显示。通常我们使用的方法是将所要显示的图片存在特定的目录下,在数据库中保存相应的图片的名称,在JSP中建立相应的数据源,利用数据库访问技术处理图片信息。但是,如果我们想动态的显示图片,上述方法就不能满足需要了。我们必须把图片存入数据库,然后通过编程动态地显示我们需要的图片。实际操作中,可以利用JSP的编程模式来实现图片的数据库存储和显示。 2、建立后台数据库 假定处理的是图片新闻,那么我们可以建立相应的数据库及数据表对象。我们要存取的数据表结构的SQL脚本如下所示: if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[picturenews]') andOBJECTPROPERTY(id, N'IsUserTable') = 1) drop table [dbo].[picturenews] GO CREATE TABLE [dbo].[picturenews] ( [id] [int] IDENTITY (1, 1) NOT NULL , [image] [image] NULL , [content] [varchar] (500) COLLATE Chinese_PRC_CI_AS NULL , [detail] [varchar] (5000) COLLATE Chinese_PRC_CI_AS NULL ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] GO 表picturenews中,字段id作为标识,每存储一行数据,自动增加1。字段image 用于存储图片信息,其数据类型为“image”。 3、向数据库存储二进制图片 启动Dreamweaver MX后,新建一个JSP文件。其代码如下所示。 <%@ page contentType="text/html;charset=gb2312"%>

网页上看不到图片的解决方法步骤

网页上看不到图片的解决方法步骤 先换一个正规的大站,看下网页图片能否显示,如果依然不行,请查看下本地电脑是否网络过慢,很多时候由于我们电脑的上网速 度很慢,就很容易导致网页图片不能显示出来。我们可以自己测试 下网速,另外一种情况是只是某些网站图片不能显示,那么多半是 网站问题,一般是网页本身或者网站所在服务器速度慢的原因。 适合于以上方法都排除之后依然不能显示图片使用。如果说是浏览器设置的问题,多半是因为禁用了错误禁用了某些插件导致的网 页中图片无法显示,那么可以在IE中进行设置,将需要启用的插件 进行还原,在桌面上右击“InternetExplorer”,选择“属性”, 点击“程序”标签页,在“管理加载项”中将禁用的插件再恢复, 这样就可以解决网页中图片无法显示的问题了。 首先第一个我们先确定网页是不是设置了不显示图片,我们点击浏览器右上角的“工具”-“Internet选项”!然后切换到“高级”!往下拖到多媒体里面就有一个显示图片的选项!这前面需要划勾!! 接下来我们来检测一下flashplayer版本是不是最新的。检测方法。点击开始然后选择控制面板!在控制面板里面找到flashplayer、双击进入切换到高级选项。然后点击立即检测即可。如果不是最新 的就更新一下!! 然后我们点击浏览器右上角的工具。选择管理加载项!!启用shockwaveflash0bject-然后点击确定确定 如果不行我们就把浏览器的安全级别调低一点!!点击浏览器右上角的工具。选择Internet选项。然后切换到安全。把级别调到低。 或者是中等!!

我们打开网页非常慢就可能网速不稳定的原因导致的!!我们可以弄个网速测试的小工具来查看一下那个软件占用了大量的网速。我们把这个限制或者是结束!! 最后如果还不行我们可以下载一个电脑管家。来诊断一下!!或者是用电脑管家来修复一下IE。。即可解决!!

C#从SQL 数据库中读取和存入图片

C#从SQL 数据库中读取和存入图片 本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用 ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下: private void button1_Click(object sender, EventArgs e) { openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP"; if(openFileDialog1.ShowDialog()==DialogResult.OK) { string fullpath =openFileDialog1.FileName;//文件路径 FileStream fs = new FileStream(fullpath, FileMode.Open); byte[] imagebytes =new byte[fs.Length]; BinaryReader br = new BinaryReader(fs); imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length)); //打开数据库 SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05"); con.Open(); SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con); com.Parameters.Add("ImageList", SqlDbType.Image); com.Parameters["ImageList"].Value = imagebytes; com.ExecuteNonQuery(); con.Close();

IE浏览器网页部分图片无法显示、PNG图片无法显示的有效解决办法

最近电脑IE浏览器老是有部分图片显示红叉叉,于是上网找“IE图片红X“”IE部分图片无法显示”“网页部分图片无法显示”,始终没找到一个正确的办法解决问题。 正打算再下一个其他浏览器来试验下,发现网速又特别慢,只好一边下着,一边研究图片红X的特征。右键看图片链接属性,然后在IE 里面输入图片具体地址,图片同样显示的是红X,别人的电脑能显示,我的无法显示? 后来仔细一看,发现这些无法显示的图片后缀都是.png,于是上网找“PNG图片无法显示”,很顺利就搞定了。 方法如下:(我是使用的第一个方法就搞定了,刚开始的时候提示没有找到输入点,只好从网上下了个pngfilt.dll,然后运行命令,红X图片能显示了,说明还真是pngfilt.dll图片的问题,只是PNG图片显示效果很失真,我的电脑是XPSP3,我估计是文件版本没下对,就从之前的XPSP3系统GHO文件里面提取这个文件出来,Replacer替换之后,运行命令又提示无输入点,可我打开IE浏览网页的时候发现图片不失真了,晕!总之搞定pngfilt.dll文件就对了,看样子再一次替换SP3的dll文件之后可能不需再运行注册!) 方法一、使用开始——运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(然后点击确定) 注意,这个pngfilt.dll在有的系统中是在 c:\windows\system中的,要自己查看一下这文件在哪里,根据自己的系统修改一下路径。如果在注册时出现“已加载 c:\windows\system32\pngfilt.dll,但没有找到DllRegisterSever 输入点。无法注册这个文件”,则表明这个文件可能损坏了,你要去别的机子去Copy一个好的过来。再进行一次注册。(也可以去网上下载一个pngfilt.dll,切记在覆盖原文件时一定要在系统的安全模式下,否则系统会不断还原,也可以使用Replacer等类似软件工具进行替换) 方法二、1、“开始”菜单——“ 运行”,在打开处输入“regsvr32 pngfilt.dll”——点“确定”。 2、“开始”菜单——“ 运行”,在打开处输入“regedit”——点“确定”打开注册表编辑。 3、找到HKEY_LOCAL_MACHINE/SOFTWARE/MICROSOFT/INTERNET EXPLORER/EMBEDEXTNTOCLSIDMAPPINGS 文件夹(左边) 点“EMBEDEXTNTOCLSIDMAPPINGS”看其子文件夹里有没有“.PNG” 4、假若没有“.PNG”文件夹,则选定“EMBEDEXTNTOCLSIDMAPPINGS”文件夹,指着它点鼠标右键——新建“项”——将新建文件夹命名为“.png”——选定新建的“.png”——在右边栏空白处,点鼠标右键——新建“字符串值”——将新建“字符串值”命名为“clsid”(也可用重命名)——双击打开“clsid”——在“数值数据”填“02BF25D5——8C17——4B23——BC80——D3488ABDDC6B”——点“确定”即可。 5、关闭IE浏览器,重新打开IE,这时png图片就能正常显示了。 方法三、开始——运行,在运行输入框中输入“Regedit”,到这个路径 “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\Accepted Documents”,在右边右键“新建”——“字符串值” 紧接着最大的数字命名,我这里是3,故命名为4,并赋值为“image/png” 文件丢失,pngfilt.dll是个关键文件,应该在c:\windows\system32\路径下,此文件丢失会引起该故障。 2 文件注册项损坏,如果pngfilt.dll文件如果存在,那么可能是注册项丢失。使用开始->运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(然后点击确定)。 我搜索了一下机器,发现该文件存在却不在system32路径下,于是copy过去解决。 昨天开机发现我的IE出了故障,浏览很多图片的时候无法显示,很是郁闷,思索了半天也没有找到有效的办法,后来只好GOOGLE之,这时候发现一篇文章,给了我很大帮助。特转载如下,一些地方稍作修改,以求新手更加明白,希望原作者见谅。原文地址可以在梁宏舍的专栏找到,点击进入。

网页上的图片看不见 显示为红叉的原因及解决方法

网页上的图片看不见显示为红叉的原因及解决方法 论坛上的帖子,有很多兄回复中说图片看不了,显示是红叉叉,还以为是楼主骗人或者是放的图已经过期呢,但大家想想,为什么又有些兄弟能够看到图片呢?其实我自己也经常遇到这种情况,那么到底是什么原因造成这种部分图片无法正常显示的情况呢? 主要原因有以下四点: 原因1、网站的图片已经过期!(解决:无,放弃这个网站,去别的网站找) 原因2、网速不够,导致图片加载不顺利,(解决:在红叉上单击鼠标右键“显示图片”此方法不行,就是原因1的问题) 原因3、被工具屏蔽了图片〔解决:到控制面版-添加/删除程序-卸载那些助手工具) 原因4、只是GIF格式的图片不显示,(解决INTERNET选项-高级-还原默认设置) 其他可能导致这种情况的因素:修复ie浏览器,用各种工具把所有的流氓软件全部删除,改用tt浏览器。 1.有时候你IE里的这个插件、那个插件正在你不知道的情况下打开一个又一个的广告,占你cpu、占你内存,还造成你系统不稳定。我就奇怪了,为什么还有这么多人在装这些插件?

修复IE浏览器,用各种工具把所有的流氓软件全部删除或者改用tt 浏览器; 2.查看你的IE菜单栏的工具--选项--高级项目下,是不是去掉了图片显示的勾选;或者你是否安装了雅虎助手之类的软件使图片被屏蔽掉了。你如果安装了雅虎助手、卡卡助手等反插件软件,卡卡助手建议卸载,雅虎助手进行一下适当设置就行啦. 3.如果是“有些”图片不显示,而不是全部,就可能是那些图片已经不在他们的网站,被删除了之类的,或是链接别的网站的图片,被人家网站的防止超链接给挡住了。 当然电脑里的软故障是千奇百怪的,也不是你我能一两个帖子就能说清楚的,但我们总会想最好的办法去尽可能的解决这些故障。在此祝狼友们都看图愉快。 最后补充说明一点,看红叉叉图片是否有图的最简单方法:鼠标放在红叉上面,点鼠标右键,弹出菜单框,点选属性一项,弹出属性框,复制地址一栏中的地址,要注意的是地址可能很长,有几行,要复制完整,然后重开个窗口,将复制的地址粘贴在窗口中的地址栏上,回车即可。如果图片链接未失效,只是被屏蔽了,那么马上你就可以看到图片了。再回到你看图的窗口中,把刚才那个红叉点右键用显示图片,图片就出来了。这个方法很简单,只是麻烦一点,如果贴图多看起来有点累罢了。呵呵。不过不失为一个好办法. 原文链接:https://www.sodocs.net/doc/0a1356442.html,/article/3hao-23-998641.html

怎样将图片上传到数据库进行保存

这个范例共包括三个ASP文件和一个数据库(一个表),全部在同一目录下。 1、tblImage 表结构(ACCESS 2000) sn 自动编号序列号 content-type 文本图片类型 image OLE 对象图片数据 2、SimpleImageToData.asp:上传表单及保存图片到数据库的代码部分,主要文件。 <%@ Language=VBScript %> <% option explicit %> <% '从一个完整路径中析出文件名称 function getFileNamefromPath(strPath) getFileNamefromPath = mid(strPath,instrrev(strPath,"\")+1) end function '定义数据库连接字符串 dim cnstr cnstr = "driver={Microsoft Access Driver (*.mdb)};dbq=" & server.MapPath("./upload.mdb") %> 单个图像保存到数据库 上传图片 显示图片


<% if request.ServerVariables("REQUEST_METHOD") = "POST" then dim sCome, sGo, binData, strData dim posB, posE, posSB, posSE dim binCrlf dim strPath, strFileName, strContentType binCrlf = chrb(13)&chrb(10) '定义一个单字节的回车换行符

网页上的图片不显示的解决方法

网页上的图片不显示的解决方法 方法1、 原因是你的阻挡了所有网站COOKIES,导致对方无法读取你的COOKIES,所以无法显示验证码图框。另外有些网站的验证码采用FLASH形式显示,这要装Adobe Flash Player ActiveX插件的,不安装可能都是显示“X”。 1、打开IE浏览器→工具→Inter net选项→隐私(设置为低)→确定,保存退出 2、打开IE浏览器→工具→Internet选项→高级→在“显示图片”的框框打√,或直接“恢复默认值”。

3、下载Adobe Flash Player ActiveX控件(请使用右键迅雷下载)进行独立安装,然后重启电脑。 方法2、 开始->运行,

在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(不包含双引号) 然后点击确定,如果在出现“已加载c:\windows\system32\pngfilt.dll,但没有找到DllRegisterSever 输入点,无法注册这个文件”,则表明这个文件可能损坏了 你要去别的机子去Copy一个好的过来(也可以来这个网站下载: https://www.sodocs.net/doc/0a1356442.html,/tool/dll.asp)

再进行一次注册,即:开始->运行,在运行输入框中输入“regsvr32 c:\windows\system32\pngfilt.dll”(不包含双引号),如果出现“c:\windows\system32\pngfilt.dll 中的DllRegisterServer 成功” 说明问题已经解决了。 如果在覆盖“pngfilt.dll”文件时,提示“无法复制PNGFILT:文件正被另一个人或程序使用。关闭任何可能使用这个文件的程序,重新试一次。”,就把“c:\windows\system32\pngfilt.dll”这个文件用文件粉碎机粉碎掉,然后把新的“pngfilt.dll”文件粘贴过来就OK了! 方法3、 一些要求身份验证的网站使用在ASP中动态生成xbm格式图片的方法来显示验证码,但xp sp2默认设置不支持xbm格式图片。 新建文本文件~~把下面文字复制到文件中~~把文本文件改名为“xx.reg”文件,导入即可解决问题。 Windows Registry Editor Version 5.00 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Internet Explorer\Security] "BlockXBM"=dword:00000000

C# 图片保存到数据库和从数据库读取图片并显示

C# 图片保存到数据库和从数据库读取图片并显示 图片保存到数据库的方法: public void imgToDB(string sql) { //参数sql中要求保存的imge变量名称为@images //调用方法如:imgToDB("update UserPhoto set Photo=@images where UserNo='" + temp + "'"); FileStream fs = File.OpenRead(t_photo.Text); byte[] imageb = new byte[fs.Length]; fs.Read(imageb, 0, imageb.Length); fs.Close(); SqlCommand com3 = new SqlCommand (sql,con); com3.Parameters.Add("@images", SqlDbType.Image).Value = imageb; if (com3.Connection.State == ConnectionState.Closed) com3.Connection.Open(); try { com3.ExecuteNonQuery(); } catch { } finally { com3.Connection.Close(); } } 数据库中读出图片并显示在picturebox中: 方法一: private void ShowImage(string sql) { //调用方法如:ShowImage("select Photo from UserPhoto where UserNo='" + userno +"'"); SqlCommand cmd = new SqlCommand(sql, conn); conn.Open(); byte[] b= (byte[])cmd.ExecuteScalar(); if (b.Length 〉0) { MemoryStream stream = new MemoryStream(b, true); stream.Write(b, 0, b.Length); pictureBox1.Image = new Bitmap(stream); stream.Close(); } conn.Close(); }

上传图片及存到数据库

1.上传图片到指定的文件夹,并且把图片的路径存到数据库里面。 //判断上传是否有文件 if (FileUpload1.HasFile) { string filepath = FileUpload1.PostedFile.FileName.ToString(); //将图片保存到项目文件夹image里面 string fileName = System.IO.Path.GetFileName(filepath); string savePaht = Server.MapPath("images/" + fileName); FileUpload1.SaveAs(savePaht); string strSql = "insert into userInfo (userimage) values ('"+ filepath+"')"; // string strSql = "insert into userInfo (userimage) values (@image)"; //userInfo 是表名userimage是图片的字段 Sqlconnection conn=new Sqlconnection(@"数据库的连接字符串"); SqlCommand cmd = new SqlCommand(strSql, conn); conn.open(); //cmd.parameters.add("@image",sqldbtype.varchar,100).value="./image"+filepath; cmd.ExecuteNonQuery(); } 2.遍历文件夹里面的图片,显示在datalist里面 //获取图片所在的文件夹的路径 DirectoryInfo imagesfile = new DirectoryInfo(Server.MapPath("./images")); //绑定数据源 DataList1.DataSource = imagesfile.GetFiles("*.jpg"); DataList1.DataBind();

网页不显示图片,显示小叉叉

打开网页的时候,图片不显示显示红色的小叉叉,而且有的时候,登陆某些页面的时候,不显示登陆的按钮,其实不显示的大多数是png图片,那么我来介绍中解决该种问题的办法吧,本人已经试过了,主要是我的已经出现了好几次这样的状态,所以拿来与大家分享!希望能够帮助到大家。内有具体的图示步骤。 复制以下代码: Windows Registry Editor V ersion 5.00 [HKEY_CLASSES_ROOT\MIME] [HKEY_CLASSES_ROOT\MIME\Database] [HKEY_CLASSES_ROOT\MIME\Database\Bootstrap Content Type] "application/vnd.ms-xpsdocument"="{c18d5e87-12b4-46a3-ae40-67cf39bc6758}" "application/x-ms-application"="{0a402d70-1f10-4ae7-bec9-286a98240695}" "application/x-ms-xbap"="{89f11169-844a-4725-b7a5-c342c50431a7}" "application/xaml+xml"="{7210ff00-0bcf-4dba-992a-80f60882922b}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type] [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/atom+xml] "CLSID"="{528d46b3-3a4b-4b13-bf74-d9cbd7306e07}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/fractals] "Extension"=".fif" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/futuresplash] "Extension"=".spl" "CLSID"="{D27CDB6E-AE6D-11cf-96B8-444553540000}" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/hta] "CLSID"="{3050f4d8-98B5-11CF-BB82-00AA00BDCE0B}" "Extension"=".hta" [HKEY_CLASSES_ROOT\MIME\Database\Content Type\application/kset] "Extension"=".et"

存储过程_将图片存入数据库

一、写一个存储过程,将图片存入数据库中 基本情况介绍: 数据库版本:oracle 11g 数据库用户:scott 数据库密码:tiger JDK:1.6 要导入的图片:D:\picture\1.jpg --创建存储图片的表 CREATE TABLE IMAGE_LOB (T_ID V ARCHAR2 (5) NOT NULL,T_IMAGE BLOB NOT NULL); --创建存储图片的目录 CREATE OR REPLACE DIRECTORY IMAGES AS 'D:\picture'; 存储过程如下: CREATE OR REPLACE PROCEDURE IMG_INSERT (TID V ARCHAR2,FILENAME V ARCHAR2) AS F_LOB BFILE;--文件类型 B_LOB BLOB; BEGIN iNSERT INTO IMAGE_LOB (T_ID, T_IMAGE) V ALUES (TID,EMPTY_BLOB ()) RETURN T_IMAGE INTO B_LOB; --插入空的blob F_LOB:= BFILENAME ('IMAGES', FILENAME); --获取指定目录下的文件 DBMS_LOB.FILEOPEN(F_LOB, DBMS_LOB.FILE_READONL Y); --以只读的方式打开文件 DBMS_LOB.LOADFROMFILE (B_LOB, F_LOB,DBMS_LOB.GETLENGTH (F_LOB)); --传递对象 DBMS_LOB.FILECLOSE (F_LOB); --关闭原始文件 COMMIT; END;

将数据库中保存的图片缩小的一种方法

在数据库的日常维护中,经常遇到一些小问题需要处理,比如图片的存储,说起来也是我当初程序设计考虑不全。 数据库: SQLServer 2000 程序:Delphi 图片存放字段类型: BLOB 客户只存了不到1000张图片,结果数据库存放空间现在是相当的大了, 因客户端用户上传图片时,小的几M,大的几十M,主要是数码相机照的,最开始时,我的软件没有处理大小, 最近才缩小处理后再保存. 而现在资料库文件就是40多G了 带来问题:查询带图片的功能时很慢,每次备份时很慢,且备份文件也大。以后如果继续增大…… 解决方法:改变数据库中图片的大小, 在保证1024*768的清晰程度下,尽可能小的改变资料库容量。 使用中间图片c:\tmp.jpg取出数据库的图形,按比例缩小,然后保存在数据库中,再收缩数据库。 具体过程: 1.将数据库中图片取出用TADOBlobStream处理。 2.用函数ZoomJpgSize(iLen,iWid,picBlob)等比例缩小。 3.用TADOBlobStream将图片保存回数据库。 4.收缩数据库DBCC SHINKDATABASE('bb001',TRUNCATEONLY) 具体核心代码见附件。 test_ZoomJpg.rar 最后问题得以解决. 最后文件大小从40G下降到了不到1G。 说明: 1.源程序可以继续改进,TADOBlobStream流是否可以转为二进制直接压缩。欢迎交流15196670@https://www.sodocs.net/doc/0a1356442.html, 2.源程序用c:\tmp.jpg处理几M的图片时速度慢。 3.源程序图片处理可以继续加强,如放大,缩小,导出本地文件,旋转等功能。

如何复制网页上无法复制的图片

如何复制网页上无法复制的图片 很多资料性的网络文章,往往在网页禁止使用“复制”、“粘贴”命令。其解决方法如下:方法一、最简单的破解方法:单击IE浏览器的“工具”——“internet 选项”——“安全”,将其中的“internet”的安全级别设为最高级别,“确定”后刷新网页即可。 安全级别最高的时候,一切控件和脚本均不能运行,再厉害的网页限制手段统统全部作废。 方法二、破解网页不能复制的方法: 但对有些网页却不管用因为他们并不用脚本限制我们的(好象起点就是这样),他们在网页中加了如下代码: 禁止左键〈body onselectstart='return false'〉 禁止右键〈body oncontextmenu=self.event.returnvalue=false〉 结合起来禁止左右键 〈body oncontextmenu=self.event.returnvalue=false onselectstart='return false'>左右键被禁止了自然无法复制什么的了,在浏览器里查看源文件,搜索oncontextmenu.false之类的代码删除,再刷新就可以了。 现在一般禁止网页复制的代码就是在里加入以下代码: 以前我是用这样解决的,就是先把网页另存为,保存在本地之后,再对本地的那个页面用记事本编辑,把上面这段代码去掉就可以复制内容了。 方法三、破解网页不能复制的方法:用word破解 某些网页中的文字无论用什么方法都不能选中复制。因为被禁止复制了,如果要得到其中的某段文字,虽然可以用降低安全级别、查看源文件等方法来实施,但我们还可以用常用的Word来更为简单方便的获取。

介绍如何将图片存入数据库

本实例主要介绍如何将图片存入数据库。将图片存入数据库,首先要在数据库中建立一张表,将存储图片的字段类型设为Image类型,用FileStream类、BinaryReader把图片读成字节的形式,赋给一个字节数组,然后用ADO.SqlCommand对象的ExecuteNonQuery()方法来把数据保存到数据库中。主要代码如下: private void button1_Click(object sender, EventArgs e) { openFileDialog1.Filter = "*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP"; if(openFileDialog1.ShowDialog()==DialogResult.OK) { string fullpath =openFileDialog1.FileName;//文件路径 FileStream fs = new FileStream(fullpath, FileMode.Open); byte[] imagebytes =new byte[fs.Length]; BinaryReader br = new BinaryReader(fs); imagebytes = br.ReadBytes(Convert.ToInt32(fs.Length)); //打开数据库 SqlConnection con = new SqlConnection("server=(local);uid=sa;pwd=;database=db_05"); con.Open(); SqlCommand com = new SqlCommand("insert into tb_08 values(@ImageList)",con); com.Parameters.Add("ImageList", SqlDbType.Image); com.Parameters["ImageList"].Value = imagebytes; com.ExecuteNonQuery(); con.Close(); }

存储图片到SQLSERVER大数据库中

实用标准文档 如何存储图片到SQL SERVER数据库中 SQL Server提供了一个特别的数据类型:image,它是一个包含binary数据的类型。 下边这个例子就向你展示了如何将文本或照片放入到数据库中的办法。在这篇文章中我们要看到如何在SQL Server中存储和读取图片。 1、建立一个表: 在SQL SERVER中建立这样结构的一个表: 列名类型目的 ID Integer主键ID IMGTITLEVarchar(50)图片的标题 IMGTYPEVarchar(50)图片类型. https://www.sodocs.net/doc/0a1356442.html,要以辨认的类型 IMGDATA Image用于存储二进制数据 2、存储图片到SQL SERVER数据库中 为了能存储到表中,你首先要上传它们到你的WEB服务器上,你可以开发一个webform,它用来将客户端中TextBoxwebcontrol中的图片入到你的WEB服务器上来。将你的encType属性设置为:myltipart/formdata. Stream imgdatastream = File1.PostedFile.InputStream; int imgdatalen = File1.PostedFile.ContentLength; string imgtype = File1.PostedFile.ContentType; string imgtitle = TextBox1.Text; byte[] imgdata = new byte[imgdatalen];

int n = imgdatastream.Read(imgdata,0,imgdatalen); string connstr=((NameValueCollection)Context.GetConfig("appSettings"))["connstr"];S qlConnection connection = new SqlConnection(connstr); SqlCommand command = new SqlCommand ("INSERT INTO ImageStore(imgtitle,imgtype,imgdata) VALUES ( @imgtitle, @imgtype,@imgdata )", connection );SqlParameter paramTitle = new SqlParameter ("@imgtitle", SqlDbType.VarChar,50 ); paramTitle.Value = imgtitle; command.Parameters.Add( paramTitle); SqlParameter paramData = new SqlParameter( "@imgdata", SqlDbType.Image );文案大全 实用标准文档 paramData.Value = imgdata; command.Parameters.Add( paramData ); SqlParameter paramType = new SqlParameter( "@imgtype", SqlDbType.VarChar,50 );paramType.Value = imgtype; command.Parameters.Add( paramType ); connection.Open(); int numRowsAffected = command.ExecuteNonQuery(); connection.Close(); 3、从数据库中恢复读取

图片保存到mysql数据库

在我们设计和制作网站的过程中,有时把图片保存到数据库中要比存成文件的形式更加方便。PHP和MySQL这对黄金组合可以很容易的实现上述功能。在本文中,我们将会向读者介绍如何把图片保存到MySQL数据库中以及如何将数据库中的图片显示出来。 设置数据库 我们通常在数据库中所使用的文本或整数类型的字段和需要用来保存图片的字段的不同之处就在于两者所需要保存的数据量不同。MySQL数据库使用专门的字段来保存大容量的数据,数据类型为BLOB。 MySQL数据库为BLOB做出的定义如下:BLOB数据类型是一种大型的二进制对象,可以保存可变数量的数据。BLOB具有四种类型,分别是TINYBLOB,BLOB, MEDIUMBLOB 和LONGBLOB,区别在于各自所能够保存的最大数据长度不同。 在介绍了所需要使用的数据类型之后,我们可以使用以下语句创建保存图象的数据表。 CREATE TABLE Images ( PicNum int NOT NULL AUTO_INCREMENT PRIMARY KEY, Image BLOB ); 编写上传脚本 关于如何实现文件的上传,我们在这里就不再介绍了。现在,我

们主要来看一下如何接收上传文件并将其存入到MySQL数据库中。具体的脚本代码如下,其中我们假定文件上传域的名称为Picture。 这样,我们就可以成功的把图片保存到数据库中。如果在将图片插入MySQL的过程中出现问题,可以检查一下MySQL数据库所允许的最大数据包的大小。如果设置值过小的话,我们会在数据库的错误日志中找到相应的记录。 下面,我们简单说明一下上述脚本程序。首先,我们通过“If($Picture != "none")”检查是否有文件被上传。然后,使用addslashes()函数避免出现数据格式错误。最后,连接MySQL,选择数据库并插入图片。 显示图片 在知道了如何将图片存入数据库之后,我们就需要考虑怎样才能从

网页打开不显示图片

主要原因有以下四点: 原因1、可能是IE设置为‘不显示网页上图片(解决:IE属性--高级--多媒体,勾选“显示图片”,点击“确定”即可) 原因2、网站的图片已经过期!(解决:无,放弃这个网站,去别的网站找)原因3、网速不够,导致图片加载不顺利,(解决:在红叉上单击鼠标右键“显示图片”,此方法不行,就是原因2的问题) 原因4、被工具屏蔽了图片〔解决:到控制面版-“添加/删除程序-卸载那些助手工具”〕 原因5、只是GIF格式的图片不显示,(解决:打开网页——工具——INTERNET 选项——高级——还原默认设置——确定——关了IE再打开) 其他可能导致这种情况的因素: 修复ie浏览器用各种工具把所有的流氓软件全部删除 1、有时候你IE里的这个插件、那个插件正在你不知道的情况下打开一个又一个的广告,占你cpu、占你内存,还造成你系统不稳定。修复IE浏览器,用各种工具把所有的流氓软件全部删除 2、查看你的IE菜单栏的工具--选项--高级项目下,是不是去掉了图片显示的勾选;或者你是否安装了雅虎助手之类的软件使图片被屏蔽掉了。你如果安装了雅虎助手,进行一下适当设置就行啦; 3、如果是“有些”图片不显示,而不是全部,就可能是那些图片已经不在他们的网站,被删除了之类的,或是链接别的网站的图片,被人家网站的防止超链接给挡住了。或者可能是网络或浏览器组件的毛病,建议重新注册浏览器组件。如果还不行,再试试下面方法 一、 1、点击“开始”菜单,打开“运行”。 2、输入regsvr32 jscript.dll后选择“确定”。 出现提示后,点击确定。 3、再次输入regsvr32 vbscript.dll选择“确定”。 再一次出现提示后,确定。 二、 1.在浏览器菜单上打开“工具”->“internet选项”->“安全”-“internet”->“自定义级别”->“安全设置”把“运行ActiveX控件和插件” 项中的“启用”选上。 2.恢复图片预览功能: Windows XP的图片预览功能,对应的控件文件为thurnbvw.dll。如果该功能损坏,可单击“开始”一“运行” , 在“打开”框中输人:" Regsvr32 Thurnbvw. dll" ,单击“确定”执行命令,这时就会弹出提示框: " DllRegisterServer in Thumbvw.dll succeeded." ,这表明控件注册成功。重新启动电脑,WindowsXP 的图片预览功能便恢复了。

上传图片及存到大数据库

实用标准文案 1.上传图片到指定的文件夹,并且把图片的路径存到数据库里面。 //判断上传是否有文件 if (FileUpload1.HasFile) { string filepath = FileUpload1.PostedFile.FileName.ToString(); //将图片保存到项目文件夹image里面 string fileName = System.IO.Path.GetFileName(filepath); string savePaht = Server.MapPath("images/" + fileName); FileUpload1.SaveAs(savePaht); string strSql = "insert into userInfo (userimage) values ('"+ filepath+"')"; // string strSql = "insert into userInfo (userimage) values (@image)"; //userInfo 是表名 userimage是图片的字段 Sqlconnection conn=new Sqlconnection(@"数据库的连接字符串"); SqlCommand cmd = new SqlCommand(strSql, conn); conn.open(); //cmd.parameters.add("@image",sqldbtype.varchar,100).value="./image"+filepath; cmd.ExecuteNonQuery(); } 2.遍历文件夹里面的图片,显示在datalist里面 //获取图片所在的文件夹的路径 DirectoryInfo imagesfile = new DirectoryInfo(Server.MapPath("./images")); //绑定数据源 DataList1.DataSource = imagesfile.GetFiles("*.jpg"); DataList1.DataBind(); 精彩文档

相关主题