……诸君好啊,又碰头了。聊了十几期,总算把SQL查询语句聊完了,伸个懒腰先。
……SELECT查询语句是SQL的焦点,聊完了它,剩下的就简单了……掰掰我的手指头……关于SQL,我们大要还有3个部门没讲,别离是DELETE删除、UPDATE更新以及INSERT新增。这3个语句讲完,本系列的SQL也就告一段落了,长舒一口吻。
我们今天先来讲DELETE语句,顾名思义,也就是若何从数据库中删除数据。
WHERE前提不是必需的,但当没有WHERE子句等删除前提时,DELETE会删除表中所有的记实;因而当DELETE健忘了WHERE,后果凡是如下图所示:
有一个文件夹,内有一份Excel工作簿和一份ACCESS文件(点击文末【阅读原文】能够下载该示例文件)
我们此刻需要通过Excel VBA,按指定前提删除ACCESS文件中表名为’成就表’的数据行。
第1章的时候我们就说过,EXCEL施行SQL的把持语句,需要通过VBA+ADO的体例;第2章我们也引见了若何利用VBA援用ADO对象并施行SQL语句。Excel VBA+ADO+SQL入门教程002:简单认识ADO
而假设我们需要删除ACCESS文件中,EXCEL当前工作表(表名为’操作表’)A列呈现的姓名数据。
代码中SQL语句利用了IN运算符和子查询,关于子查询,参考过往帖:Excel VBA+ADO+SQL入门教程013:子查询
需要留意的是,DELETE后有个环节字DISTINCTROW,这凡是是ACCESS DELETE利用联系关系查询方案时必备的;而SQL Server则并不需此用法。ACCESS(JET SQL)与SQL SERVER(T-SQL)有良多分歧,这不是我们系列教程的重点,略过,感乐趣的伴侣能够自行百度。
为什么例子中利用了ACCESS文件,而不是EXCEL呢?为什么不举个利用DELETE语句删除EXCEL某个表的记实行的例子呢?不是不想,是臣办不到啊。
对于EXCEL文件,SQL能够删除单位格内的值,但不克不及利用DELETE语句删除整笔记录,或者说删除单位格本身;不然会收到以下错误提醒:
受苹果公司新划定影响,微信 iOS 版的赞扬功能被封闭,可通过二维码转账支撑公家号。