VB从Access中批量删除的问题,小弟是个新手,请高手们指教,

在Access中有个字段是:日期,比如,这一列里面有很多的记录是 2010-12-15,在VB的窗体中,有个文本框是可以输入日期的,但是,只在里面输入年份,比如输入2010 后,那么在Access中,所有的2010-12-15的记录全部删除,怎么用VB的代码实现呢,,小弟是个新手,多谢高手指教,,

在工程中添加数据环境

设置数据环境的数据文件为你的数据库。

添加命令(command1),设置数据库对象

Private Sub Form_Load()

DataEnvironment1.rsCommand1.Open

Set DataGrid1.DataSource = DataEnvironment1.rsCommand1

End Sub

Private Sub cmdCommand1_Click()

DataEnvironment1.Connection1.Execute "DELETE * From biao WHERE year(日期)='" & Trim(txtText1.Text) & "'"

DataEnvironment1.rsCommand1.Requery

MsgBox "执行完毕"

End Sub

曾经得到过别人的无私帮助,我也帮帮你把,我发给你。文件夹必须放c:根目录。没设置动态目录 ,用的是数据环境。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2012-01-14
首先要搞清楚,如果输入2010后,是想删除所有2010年的记录还是只删除2010-12-15的记录呢?
如果是删除所有2010年的记录,可以用year(记录日期)=2010来判断就可以了。追问

记录里面都是带着 年,月 ,日,的,当输入 2010 后,Access中的所有 包含 2010 的记录 全部被删除,,

追答

delete * from info where year(rs(4))="2010"
此句假定表名为info,第4列为日期列。

追问

我还是不太懂,您能不能写的全点呢,???我还是菜鸟级别呢,

追答

你操作access肯定会用sql语句吧?!
我给你的就是一句sql语句。
因为我不知道你的access文件中的表的名字,也不知道具体显示日期的表头是哪个,所以只能用假定表名为info,第4列为日期了.
你自己把 info换成你的表名,RS(4)中的4换成你表中日期的列就行了。

追问

您把全部的代码发给我吧,我还是整不明白,就是在一个VB窗体中有一个按钮,一个文本框,这个窗体是和Access连接的,Access里面有两列,日期和备注,日期有:2001-09-08,2001-07-06,两个记录,在VB窗体的文本框中输入年份2001,点击按钮后,Access中的关于2001的这两个记录会被全部删除,,,我的QQ是:1098934881,,多谢,小弟感激不尽,,,

追答

你还是没有说明白!
数据库中有个表名吧?!
连接数据库后用del * from 表名字 where year(rs(1))="年份" 进行删除
即sql=del * from 表名字 wher year(rs(1))=“2010”

第2个回答  2012-01-14
请问高手们,是怎么回事? exec="delete * from info where code='"这样可以实现批量删除. exec="delete * from info where code in ('追问

高手啊,怎么不全呢,?

相似回答