资源简介
使用工具VS2015。 数据库SQLServer2008(其他SQL都是一样的原理) 将图片存放到数据库,并且从数据库查询出来,实现上一页,下一页,删除图片。添加图片,
代码片段和文件信息
using System;
using System.Data;
using System.Data.SqlClient;
using System.Drawing;
using System.IO;
using System.Windows.Forms;
namespace testPP
{
public partial class Frnpp : Form
{
public Frnpp()
{
InitializeComponent();
}
private void bttInsertPP_Click(object sender EventArgs e)
{
insertPP();
bttStart_Click(null null);
}
public static string conmmsy = “server=SERVER6060 ; user id = yoti; pwd = yoti1202; database = yoti“;
DataTable dtPP = new DataTable();//用来存放从数据库里查询出来的图片数据
private static int i = 0;//用来存放显示第几张图片
private static string id = ““;//存放图片的ID
//插入图片
public void insertPP()
{
openFileDialog1.Filter = “*jpg|*.JPG|*.GIF|*.GIF|*.BMP|*.BMP“;
SqlConnection con = new SqlConnection(conmmsy);
con.Open();
try
{
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
string path = openFileDialog1.FileName;//文件路径
//创建文件流,path参数是文件路径
FileStream fs = new FileStream(path FileMode.Open);
int streamLength = (int)fs.Length; //获取文件流的长度。
byte[] image = new byte[streamLength]; //声明字节数组,用于保存图片文件
fs.Read(image 0 streamLength); //把图片文件转换成为字节数组保存
fs.Close();
//插入Sql语句,@img是Sql语句参数。
string sql = string.Format(“insert imagetable values(@img)“ image);
SqlCommand com = new SqlCommand(sql con); //con是一个有效的连接对象
//为命令对象添加参数,注意参数的类型
com.Parameters.Add(new SqlParameter(“img“ SqlDbType.Binary image.Length
ParameterDirection.Input true 0 0 null DataRowVersion.Default image));
com.ExecuteNonQuery(); //执行
MessageBox.Show(“插入成功“);
}
}
catch (Exception ex)
{
MessageBox.Show(ex.Message “插入图片不成功“);
}
finally
{
con.Close();
}
}
//显示图片
public void showPP(int i)
{
SqlConnection con = new SqlConnection(conmmsy); //实例化SQLconnection类。连接数据库
con.Open();
try
{
string SQLstr = “select IDimagetxt from imagetable“; //设置SQL语句
SqlDataAdapter ada = new SqlDataAdapter(SQLstr con);//建立SQL语句与数据库的连接
DataSet ds = new DataSet(); //实例化Datatable类
ada.Fill(ds); //添加SQL并且执行
dtPP = ds.Tables[0];
if (dtPP.Rows.Count>=1)
{
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
..A..H. 48640 2016-10-24 15:05 testPP\.vs\testPP\v14\.suo
文件 189 2016-10-23 15:54 testPP\App.config
文件 15360 2016-12-14 11:59 testPP\bin\Debug\testPP.exe
文件 189 2016-10-23 15:54 testPP\bin\Debug\testPP.exe.config
文件 28160 2016-12-14 11:59 testPP\bin\Debug\testPP.pdb
文件 22696 2016-12-14 11:59 testPP\bin\Debug\testPP.vshost.exe
文件 189 2016-10-23 15:54 testPP\bin\Debug\testPP.vshost.exe.config
文件 490 2015-10-22 09:54 testPP\bin\Debug\testPP.vshost.exe.manifest
文件 9973 2016-10-24 14:14 testPP\Frpp.cs
文件 11071 2016-10-24 13:42 testPP\Frpp.Designer.cs
文件 6392 2016-10-24 13:42 testPP\Frpp.resx
文件 1464 2016-10-23 17:45 testPP\obj\Debug\DesignTimeResolveAssemblyReferences.cache
文件 7188 2016-10-24 11:14 testPP\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 0 2016-10-23 15:54 testPP\obj\Debug\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs
文件 0 2016-10-23 15:54 testPP\obj\Debug\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs
文件 0 2016-10-23 15:54 testPP\obj\Debug\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs
文件 735 2016-12-14 11:59 testPP\obj\Debug\testPP.csproj.FileListAbsolute.txt
文件 1124 2016-10-24 13:42 testPP\obj\Debug\testPP.csproj.GenerateResource.Cache
文件 2384 2016-10-23 16:06 testPP\obj\Debug\testPP.csprojResolveAssemblyReference.cache
文件 15360 2016-12-14 11:59 testPP\obj\Debug\testPP.exe
文件 180 2016-10-24 13:42 testPP\obj\Debug\testPP.Frnpp.resources
文件 28160 2016-12-14 11:59 testPP\obj\Debug\testPP.pdb
文件 180 2016-10-24 11:15 testPP\obj\Debug\testPP.Properties.Resources.resources
文件 533 2016-10-24 11:15 testPP\Program.cs
文件 1320 2016-10-23 15:54 testPP\Properties\AssemblyInfo.cs
文件 2825 2016-10-23 15:54 testPP\Properties\Resources.Designer.cs
文件 5612 2016-10-23 15:54 testPP\Properties\Resources.resx
文件 1093 2016-10-23 15:54 testPP\Properties\Settings.Designer.cs
文件 249 2016-10-23 15:54 testPP\Properties\Settings.settings
文件 3905 2016-10-24 11:15 testPP\testPP.csproj
............此处省略15个文件信息
评论
共有 条评论