查看此帖的完整版本:常用SQL查询命令的语法阅读 3933 次

作者:dmacro 2005/3/16 23:00:23

常用SQL查询命令的语法
本文假定读者已经对数据库连接技术有所了解,因此只讨论有关SQL查询命令的语法。

表结构如下(MS Access 2000):

表名:userTable

----------------------

字段名         字段类型

----------------------

userID      自动计数(长整型)

userName      文本

userSex       文本

CreateDate    日期/时间(默认值为Now())

----------------------

一、用Select命令提取记录

1、取得表中所有记录

  Select命令,语句如下:

  "Select *From userTable"

2、取得表中userID字段记录

  "Select userID From userTable"

3、取得表中userID、userSex字段记录

  "Select userID, userSex From userTable"

4、取得表中userSex值为“男”的记录

  "Select From userTable Where userSex = \'男\'"

5、取得表中userName值中包含“张”字的记录

  "Select From userTable Where userName Like \'%男%\'"

6、取得表中所有记录,按CreateDate字段值降序排列

  "Select From userTable Order By CreateDate DESC"

说明:

  1)、以上命令可以组合使用,如,取得表中userName中包含“浩”字的,userID的值,并按CreateDate值的时间降序排列,那么命令如下:

  "Select userID From userTable Where userName Like \'%浩%\' Order By CreateDate DESC"

  2)、使用中应注意,如果字段类型为文本,则在条件判别时,应在条件字外加上单引号,此规则适用于任何一个SQL查询命令。

  3)、条件字中的“%”为通配符。

  4)、当判别条件多于一条时,应以“And”或“Or”连接。

二、用Insert Into命令插入新记录

1、插入一条新记录

  "Insert Into userTable (userName, userSex) Values (\'张浩南\', \'男\')"

说明:

  这里需要注意的是,插入的记录的值的类型应符合表中的字段类型,否则会出错。其实使用单引号只是个便捷的方法,但并不规范,因为如果要插入的记录中本身含有单引号,则会出现错误(虽然这种情况并不经常发生,但有可能存在)。所以我们最好使用一个自定义的函数来实现单引号的替换。方法如下

  Function SqlStr(data)

    SqlStr="\'" & Replace(data, "\'", "\'\'") & "\'"

  End Function

在命令中则为:

  Dim Name, Sex

  Name="张浩南"

  Sex="男"

  "Insert Into userTable (userName, userSex) Values (" & SqlStr(Name) & ", " & SqlStr(Sex) & ")"

  这样则无论值中是否含有单引号或双引号均不会出错。

  但请注意,这个规则只适用于类型为文本的字段,如果为其它类型,则一般无需考虑,即不必加任何符号。

三、用Update更新记录

1、更新全部记录的全部字段

  "Update userTable Set userID=1, userSex=\'男\', userName=\'徐勇\', CreateDate=" & CDate(CreateDate)

说明:

  式中的值可以用运算表达式,如:userID=userID+1等。

2、更新userName字段值为“徐勇”的记录值

  "Update userTable Set userID=1, userName=\'徐詠\' Where userName=\'徐勇\'"

说明:

  需要组合条件查询时,方法同Select。另外此处也要注意单引号问题。

四、用Delete删除记录

1、删除全部记录

  "Delete From userTable"

2、删除特定条件的记录,如删除userID为“20”的记录

  "Delete From userTable Where userID=20"

3、删除组合条件记录,如删除userSex为“女”,userName中包含“张”的记录

  "Delete From userTable Where userSex=\'女\' And userName Like \'%张%\'"

说明:

  注意单引号问题。

  以上是ASP连接数据库技术时使用SQL查询语言时的常用命令及其技巧,其实SQL命令还有很多,只是并不一定都是常用命令,如果想了解更多,请查阅有关资料。另外,以上内容为本人随手写就,手边并无参考资料,因此如有错误,请多包含,谢谢观赏。

作者:羽忆 2005/11/3 13:36:39


嗯,这些都常用到的


分页:[1]