对Excel表与数据库的操作:
如果想将数据从数据库导到Excel表中方法很多:
- 1 最简单就是在Excel 表中直接导入
步骤如下:
- 打开导入数据的Excle表格,选择工具栏数据;
- 下拉栏目中选择导入外部数据
- 选择导入数据
- 新建一个源就可以连接到数据库进行数据的导入
- 2 PL/SQL Developer 中导入
步骤如下:
- 选择你要导出数据的Table;
- 右击查询数据;
- 查出数据后直接右击数据显示的区的以外的空白区,找到自制到Excle表就可以看到数据到Excel表了;
- 3 下面就是用代码编程
- ADO实现,Excle就想数据库一的操作,但这种操作哪个Excel的表的一定格式要求!这个网上已说的很多了
/**/
/// <summary>
/// 取得所有在Excel表中的所有数据集
/// </summary>
/// <param name="xlsPath">Excel表的路径</param>
/// <returns>数据集</returns>
public
DataSet ExeclToDataSet(
string
xlsPath)

...
{
strExcel = "select * from [Sheet1$]";
//string connectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Extended Properties='Excel 8.0;';" + "Data Source=" + xlsPath + ";" ;
string connectionString ="Provider=Microsoft.Jet.OLEDB.4.0;" +"Extended Properties="Excel 8.0;HDR=NO";" + "data source=" + xlsPath;

OleDbConnection conn = new OleDbConnection(connectionString);
try

...{
conn.Open();
}
catch (Exception e)

...{
conn.Close();
throw new Exception(e.Message);
}
adapter = new OleDbDataAdapter(strExcel, conn);
ds = new DataSet();
adapter.Fill(ds);
conn.Close();
return ds;
}
这里就说到这里了,还有一个就是
DataGrid中的数据导出成Excle表代码如下:
DataTable dt
=
new
DataTable();
ExcelWR excel
=
new
ExcelWR();
dt
=
(excel.OracleToDataSet(strTableName)).Tables[
0
];
//
就是一个DataTable对象
DataGrid resultGrid
=
new
DataGrid();
resultGrid.DataSource
=
dt;
resultGrid.AutoGenerateColumns
=
true
;
resultGrid.DataBind();
Response.Clear();
Response.Buffer
=
true
;
Response.Charset
=
"
GB2312
"
;
Response.AppendHeader(
"
Content-Disposition
"
,
"
attachment;filename=FileName.xls
"
); Response.ContentEncoding
=
System.Text.Encoding.GetEncoding(
"
GB2312
"
);
//
设置输出流为简体中文
Response.ContentType
=
"
application/ms-excel
"
;
//
设置输出文件类型为excel文件。application/ms-word || application/ms-txt || application/ms-html || 或其他浏览器可直接支持文档
EnableViewState
=
false
;
System.Globalization.CultureInfo myCItrad
=
new
System.Globalization.CultureInfo(
"
ZH-CN
"
,
true
);
System.IO.StringWriter oStringWriter
=
new
System.IO.StringWriter(myCItrad);
System.Web.UI.HtmlTextWriter oHtmlTextWriter
=
new
System.Web.UI.HtmlTextWriter(oStringWriter);
resultGrid.RenderControl(oHtmlTextWriter);
//
datagridname是datagrid名
Response.Write(oStringWriter.ToString());
Response.End();
但是这种导出来的格试不能进行ADO操作,操作时会报外部表不是预期的格式,
这个就是不太灵活了.还有一个就是引入 Excel.Application对象
http://www.msdn.net/library/chs/default.asp?url=/library/CHS/modcore/html/deovrunderstandingexcelapplicationobject.asp
这里有详细的资料!
这个就写到这里了!