| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1587 人关注过本帖
标题:用OleDb操作Excel文件的问题
只看楼主 加入收藏
jimnox
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-11-25
收藏
 问题点数:0 回复次数:6 
用OleDb操作Excel文件的问题
实验貌似没法用Delete,insert,Update语句?语句在SQL的查询分析器里可以正确通过检验,保证没有语法错误

比如Delete [Easy] where [Point] < 60
这样简单的东西是不可能错的啦,但是执行失败

请问是不是没法这样操作的,只能用Select语句
搜索更多相关主题的帖子: Excel OleDb SQL 文件 语句 
2007-09-23 17:13
ta8607
Rank: 4
等 级:业余侠客
帖 子:377
专家分:244
注 册:2007-9-22
收藏
得分:0 
Delete [Easy] where [Point] < 60
可以这样用吗?

不理会流言蜚语,努力做好份内事情,只做自己.
2007-09-23 17:41
jimnox
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-11-25
收藏
得分:0 

不是可以通过OldDb对Excel像操作数据库一样操作吗?这句话没SQL语法错误啊!

现在查,添,改,都没问题了,就差删了
提示是“操作符丢失”

2007-09-23 17:45
ta8607
Rank: 4
等 级:业余侠客
帖 子:377
专家分:244
注 册:2007-9-22
收藏
得分:0 

不好意思,看成SQL了.你把代码贴上来让大家研究一下.


不理会流言蜚语,努力做好份内事情,只做自己.
2007-09-23 17:56
jimnox
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-11-25
收藏
得分:0 

class ExcelConnection
{
public string ExcelConnString;
public OleDbConnection ExcelOldDbConn = new OleDbConnection();

public ExcelConnection(string ExcelFileName)
{
ExcelConnString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + ExcelFileName + ";Extended Properties=Excel 8.0";
ExcelOldDbConn.ConnectionString = ExcelConnString;
}

public void ExcelOpen()
{
ExcelOldDbConn.Open();
}

public void ExcelClose()
{
ExcelOldDbConn.Close();
}

public DataSet ExcelReadDS(string Range, string SheetName, string Condition)
{
string ExcelSelectStr = "SELECT " + Range + " FROM " + SheetName + " " + Condition; //查询语句
OleDbDataAdapter ExcelSelectDA = new OleDbDataAdapter(ExcelSelectStr, ExcelOldDbConn); //执行查询
DataSet ExcelDS = new DataSet();
ExcelSelectDA.Fill(ExcelDS); //填充数据
ExcelSelectDA.Dispose();
return ExcelDS;
}

public OleDbDataReader ExcelReadDR(string Range, string SheetName, string Condition)
{
string ExcelSelectStr = "SELECT " + Range + " FROM " + SheetName + " " + Condition;
OleDbCommand ExcelSelectCmd = new OleDbCommand(ExcelSelectStr, ExcelOldDbConn);
OleDbDataReader ExcelDR = ExcelSelectCmd.ExecuteReader();
return ExcelDR;
}

public void ExcelInsert(string SheetName, string Range, string Value, string Condition)
{
string ExcelInsertStr = "INSERT INTO " + SheetName + " ( " + Range + " ) VALUES ( " + Value + " ) " + Condition;
OleDbCommand ExcelInsertCmd = new OleDbCommand(ExcelInsertStr, ExcelOldDbConn);
ExcelInsertCmd.ExecuteNonQuery();
ExcelInsertCmd.Dispose();
}

public void ExcelUpdate(string SheetName, string UpdateValues, string Condition)
{
string ExcelUpdateStr = "UPDATE " + SheetName + " " + UpdateValues + " " + Condition;
OleDbCommand ExcelUpdateCmd = new OleDbCommand(ExcelUpdateStr, ExcelOldDbConn);
ExcelUpdateCmd.ExecuteNonQuery();
ExcelUpdateCmd.Dispose();
}

public void ExcelDelete(string SheetName, string Condition)
{
string ExcelDeleteStr = "Delete " + SheetName + " " + Condition;
OleDbCommand ExcelDeleteCmd = new OleDbCommand(ExcelDeleteStr, ExcelOldDbConn);
ExcelDeleteCmd.ExecuteNonQuery();
ExcelDeleteCmd.Dispose();
}
}

这是一个我写的Excel文件操作类的全部代码,查,添,改,都没问题了,但是删会报错
请指教删的问题
贴在这里,也算开源了~

2007-09-23 18:03
ta8607
Rank: 4
等 级:业余侠客
帖 子:377
专家分:244
注 册:2007-9-22
收藏
得分:0 
看不出哪里出错了~~~

不理会流言蜚语,努力做好份内事情,只做自己.
2007-09-24 08:17
jimnox
Rank: 1
等 级:新手上路
帖 子:107
专家分:0
注 册:2006-11-25
收藏
得分:0 
目录写保护和权限都没问题,还真不知道哪错了呃……
2007-09-24 15:47
快速回复:用OleDb操作Excel文件的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.026125 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved