如何用C#向ACCESS数据库插入图片? 如题,请高手指点一下小弟哦 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 http://community.csdn.net/Expert/topic/4292/4292611.xml?temp=.801037 <%@ Page language="c#" Debug="true" Codebehind="Image2Access.aspx.cs" AutoEventWireup="false" Inherits="eMeng.Exam.Image2Access" %><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" ><HTML><HEAD><title>上传文件到 Access 数据库</title><meta name="GENERATOR" Content="Microsoft Visual Studio 7.0"><meta name="CODE_LANGUAGE" Content="C#"><meta name="vs_defaultClientScript" content="JavaScript"><meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5"></HEAD><body MS_POSITIONING="GridLayout"><form id="DataGridShowImage" method="post" runat="server" enctype="multipart/form-data"><h3 align="center">上传文件到 Access 数据库</h3><asp:DataGrid ID="DG_Persons" AutoGenerateColumns="False" Width="99%" HeaderStyle-BackColor="#ff0000"HeaderStyle-Font-Bold="True" HeaderStyle-ForeColor="#ffffff" ItemStyle-BackColor="Beige" BorderColor="#000000"Runat="server" HeaderStyle-HorizontalAlign="Center"><Columns><asp:TemplateColumn HeaderText="姓名"><ItemTemplate><asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonName") %>' ID="Label1"/></ItemTemplate></asp:TemplateColumn><asp:TemplateColumn HeaderText="电子邮件"><ItemTemplate><asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonEmail") %>' ID="Label2"/></ItemTemplate></asp:TemplateColumn><asp:TemplateColumn HeaderText="性别"><ItemTemplate><asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonSex") %>' ID="Label3"/></ItemTemplate></asp:TemplateColumn><asp:TemplateColumn HeaderText="照片"><ItemTemplate><asp:Image Runat=server ID="Image1" ImageUrl='<%# FormatURL(DataBinder.Eval(Container.DataItem, "PersonID")) %>' /></ItemTemplate></asp:TemplateColumn></Columns></asp:DataGrid><b>文件名字:</b><input id="MyFileName" type="text" runat="server" NAME="MyFileName"><P><b>文件:</b><input id="MyFile" type="file" runat="server" NAME="MyFile"><br><br><input type="submit" value="开始上传" runat="server" ID="Submit1" NAME="Submit1"></P></form></body></HTML> using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Data.OleDb;using System.Drawing;using System.Web;using System.IO;using System.Web.SessionState;using System.Web.UI;using System.Web.UI.WebControls;using System.Web.UI.HtmlControls;namespace eMeng.Exam{/// <summary>/// Image2Access 的摘要说明。/// </summary>public class Image2Access : System.Web.UI.Page{protected System.Web.UI.HtmlControls.HtmlInputText MyFileName;protected System.Web.UI.HtmlControls.HtmlInputFile MyFile;protected System.Web.UI.HtmlControls.HtmlInputButton Submit1;protected System.Web.UI.WebControls.DataGrid DG_Persons;private void Page_Load(object sender, System.EventArgs e){// 在此处放置用户代码以初始化页面BindGrid();}private void BindGrid(){string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath("Image2Access.mdb");OleDbConnection myConnection = new OleDbConnection(strCnn);OleDbCommand myCommand = new OleDbCommand("SELECT * FROM Person", myConnection);myCommand.CommandType = CommandType.Text;try{myConnection.Open();DG_Persons.DataSource = myCommand.ExecuteReader(CommandBehavior.CloseConnection);DG_Persons.DataBind();}catch(OleDbException SQLexc){Response.Write("提取数据时出现错误:" + SQLexc.ToString());}}protected string FormatURL(object strArgument){return "ReadImage.aspx?id=" + strArgument.ToString();}#region Web 窗体设计器生成的代码override protected void OnInit(EventArgs e){//// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。//InitializeComponent();base.OnInit(e);}/// <summary>/// 设计器支持所需的方法 - 不要使用代码编辑器修改/// 此方法的内容。/// </summary>private void InitializeComponent(){ this.Submit1.ServerClick += new System.EventHandler(this.Submit1_ServerClick);this.Load += new System.EventHandler(this.Page_Load);}#endregionprivate void Submit1_ServerClick(object sender, System.EventArgs e){//得到提交的文件Stream fileDataStream = MyFile.PostedFile.InputStream;//得到文件大小int fileLength = MyFile.PostedFile.ContentLength;//创建数组byte[] fileData = new byte[fileLength];//把文件流填充到数组fileDataStream.Read(fileData,0,fileLength);//得到文件名字string fileTitle = MyFileName.Value;//得到文件类型string fileType = MyFile.PostedFile.ContentType;//构建数据库连接,SQL语句,创建参数string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Image2Access.mdb");OleDbConnection myConnection = new OleDbConnection(strCnn);OleDbCommand command = new OleDbCommand ("INSERT INTO Person (PersonName,PersonEmail,PersonSex,PersonImageType,PersonImage)" + "VALUES (@PersonName,@PersonEmail,@PersonSex,@PersonImageType,@PersonImage)", myConnection);System.Data.OleDb.OleDbParameter paramPersonName = new OleDbParameter("@PersonName", System.Data.OleDb.OleDbType.VarChar,50); paramPersonName.Value = fileTitle;command.Parameters.Add(paramPersonName);System.Data.OleDb.OleDbParameter paramPersonEmail = new OleDbParameter("@PersonEmail", System.Data.OleDb.OleDbType.VarChar,50);paramPersonEmail.Value = "[email protected]";command.Parameters.Add(paramPersonEmail);System.Data.OleDb.OleDbParameter paramPersonSex = new OleDbParameter("@paramPersonSex", System.Data.OleDb.OleDbType.VarChar,50); paramPersonSex.Value = "男";command.Parameters.Add(paramPersonSex);System.Data.OleDb.OleDbParameter paramPersonImageType = new OleDbParameter("@PersonImageType", System.Data.OleDb.OleDbType.VarChar,50);paramPersonImageType.Value = fileType;command.Parameters.Add(paramPersonImageType);System.Data.OleDb.OleDbParameter paramPersonImage = new OleDbParameter("@PersonImage", System.Data.OleDb.OleDbType.Binary); paramPersonImage.Value = fileData;command.Parameters.Add(paramPersonImage);//打开连接,执行查询myConnection.Open();command.ExecuteNonQuery();myConnection.Close();}}} 连接SQL2000问题 获取对象属性列表,对每一个属性赋值 c# 程序发布以后如何方式别人反编译修改程序内容? |zyciis| 如何通过反射取得对像的私有变量的值,谢谢 如何验证xml是正确的? 求一个查询 编程技术已经从dos发展到windows,现在又到了,net时代,那么初学者的门槛不是越来越高了吗? C#链接sql数据库 怎么将空的dataset绑定到datagrid中 达人帮忙呀 关于CrystalReport的问题(C#) 关于e.CommandArgument的转换 如何得到对象的名称
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" >
<HTML>
<HEAD>
<title>上传文件到 Access 数据库</title>
<meta name="GENERATOR" Content="Microsoft Visual Studio 7.0">
<meta name="CODE_LANGUAGE" Content="C#">
<meta name="vs_defaultClientScript" content="JavaScript">
<meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
</HEAD>
<body MS_POSITIONING="GridLayout">
<form id="DataGridShowImage" method="post" runat="server" enctype="multipart/form-data">
<h3 align="center">上传文件到 Access 数据库</h3>
<asp:DataGrid ID="DG_Persons" AutoGenerateColumns="False" Width="99%" HeaderStyle-BackColor="#ff0000"
HeaderStyle-Font-Bold="True" HeaderStyle-ForeColor="#ffffff" ItemStyle-BackColor="Beige" BorderColor="#000000"
Runat="server" HeaderStyle-HorizontalAlign="Center">
<Columns>
<asp:TemplateColumn HeaderText="姓名">
<ItemTemplate>
<asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonName") %>' ID="Label1"/>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="电子邮件">
<ItemTemplate>
<asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonEmail") %>' ID="Label2"/>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="性别">
<ItemTemplate>
<asp:Label Runat="server" Text='<%# DataBinder.Eval(Container.DataItem, "PersonSex") %>' ID="Label3"/>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="照片">
<ItemTemplate>
<asp:Image Runat=server ID="Image1" ImageUrl='<%# FormatURL(DataBinder.Eval(Container.DataItem, "PersonID")) %>' />
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
</asp:DataGrid>
<b>文件名字:</b><input id="MyFileName" type="text" runat="server" NAME="MyFileName">
<P>
<b>文件:</b><input id="MyFile" type="file" runat="server" NAME="MyFile">
<br>
<br>
<input type="submit" value="开始上传" runat="server" ID="Submit1" NAME="Submit1">
</P>
</form>
</body>
</HTML>
using System.Collections;
using System.ComponentModel;
using System.Data;
using System.Data.OleDb;
using System.Drawing;
using System.Web;
using System.IO;
using System.Web.SessionState;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;namespace eMeng.Exam
{
/// <summary>
/// Image2Access 的摘要说明。
/// </summary>
public class Image2Access : System.Web.UI.Page
{
protected System.Web.UI.HtmlControls.HtmlInputText MyFileName;
protected System.Web.UI.HtmlControls.HtmlInputFile MyFile;
protected System.Web.UI.HtmlControls.HtmlInputButton Submit1;
protected System.Web.UI.WebControls.DataGrid DG_Persons;private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
BindGrid();
}
private void BindGrid()
{
string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" +Server.MapPath("Image2Access.mdb");
OleDbConnection myConnection = new OleDbConnection(strCnn);
OleDbCommand myCommand = new OleDbCommand("SELECT * FROM Person", myConnection);
myCommand.CommandType = CommandType.Text;
try
{
myConnection.Open();
DG_Persons.DataSource = myCommand.ExecuteReader(CommandBehavior.CloseConnection);
DG_Persons.DataBind();
}
catch(OleDbException SQLexc)
{
Response.Write("提取数据时出现错误:" + SQLexc.ToString());
}
}
protected string FormatURL(object strArgument)
{
return "ReadImage.aspx?id=" + strArgument.ToString();
}#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Submit1.ServerClick += new System.EventHandler(this.Submit1_ServerClick);
this.Load += new System.EventHandler(this.Page_Load);}
#endregionprivate void Submit1_ServerClick(object sender, System.EventArgs e)
{
//得到提交的文件
Stream fileDataStream = MyFile.PostedFile.InputStream;//得到文件大小
int fileLength = MyFile.PostedFile.ContentLength;//创建数组
byte[] fileData = new byte[fileLength];//把文件流填充到数组
fileDataStream.Read(fileData,0,fileLength);//得到文件名字
string fileTitle = MyFileName.Value;//得到文件类型
string fileType = MyFile.PostedFile.ContentType;//构建数据库连接,SQL语句,创建参数
string strCnn = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("Image2Access.mdb");
OleDbConnection myConnection = new OleDbConnection(strCnn);
OleDbCommand command = new OleDbCommand ("INSERT INTO Person (PersonName,PersonEmail,PersonSex,PersonImageType,PersonImage)" +
"VALUES (@PersonName,@PersonEmail,@PersonSex,@PersonImageType,@PersonImage)", myConnection);System.Data.OleDb.OleDbParameter paramPersonName = new OleDbParameter("@PersonName", System.Data.OleDb.OleDbType.VarChar,50);
paramPersonName.Value = fileTitle;
command.Parameters.Add(paramPersonName);System.Data.OleDb.OleDbParameter paramPersonEmail = new OleDbParameter("@PersonEmail", System.Data.OleDb.OleDbType.VarChar,50);
paramPersonEmail.Value = "[email protected]";
command.Parameters.Add(paramPersonEmail);System.Data.OleDb.OleDbParameter paramPersonSex = new OleDbParameter("@paramPersonSex", System.Data.OleDb.OleDbType.VarChar,50);
paramPersonSex.Value = "男";
command.Parameters.Add(paramPersonSex);System.Data.OleDb.OleDbParameter paramPersonImageType = new OleDbParameter("@PersonImageType", System.Data.OleDb.OleDbType.VarChar,50);
paramPersonImageType.Value = fileType;
command.Parameters.Add(paramPersonImageType);System.Data.OleDb.OleDbParameter paramPersonImage = new OleDbParameter("@PersonImage", System.Data.OleDb.OleDbType.Binary);
paramPersonImage.Value = fileData;
command.Parameters.Add(paramPersonImage);//打开连接,执行查询
myConnection.Open();
command.ExecuteNonQuery();
myConnection.Close();
}
}
}