本站为一个PHP个人网站,提供一些代码技术文章、提交免费空间消息、一些代码、让学习更轻松-PHP-小戴
你当前的位置:首页>>技术文章>>asp技术文章
小戴个人门户站导航 PHP小戴个人门户站 关于站长web个人门户站 设计服务-网络公司,建设网站,企业logo设计,包装设计,网站设计,整站程序开发 联系站长-小戴个人门户站
  • 技术文章排行榜
文章数据加载中...
  • 免费空间排行榜
空间数据加载中...

asp开发常用sql语句

  • 1、SELECT 语句

    在SQL的世界里,最最基础的操作就是SELECT 语句了。在数据库工具下直接采用SQL的时候很多人都会熟悉下面的操作:

    以下为引用的内容:
    SELECT what
    FROM whichTable
    WHERE criteria

    执行以上语句就会创建一个存放其结果的查询。

    而在ASP页面文件上,你也可以采用以上的一般语法,不过情况稍微不同,ASP编程的时候,SELECT 语句的内容要作为字符串赋给一个变量:

    以下为引用的内容:
    SQL = \"SELECT what FROM whichTable WHERE criteria\"

    好了,明白了ASP下SQL“说话”的方式,接下来如法炮制即可,只要满足你的需要,传统的SQL查询模式和条件查询都能派用场。

    举例说明,不妨假设你的数据库内有个数据表,名字是Products ,现在你想取出这个表里的全部记录。然后你就编写了下面的代码:

    以下为引用的内容:

    SQL =\"SELECT * FROM Products\"

    以上代码——SQL语句的作用就是取出表内的全部数据——执行后将会选出数据表内的全部记录。不过,要是只想从表内取出某个特定列,比如p_name。那就不能用 * 通配符了,这里得键入具体某列的名字,代码如下:

    以下为引用的内容:
    SQL =\"SELECT p_name FROM Products\"

    执行以上查询之后Products 表内、p_name 列的内容就会全被选取出来。

    2、WHERE子句设置查询条件

    举个例子,假如你只打算取出p_name 记录,而且这些记录的名字必须以字母w打头,那么你就要用到下面的WHERE 子句了:

    以下为引用的内容:
    SQL =\"SELECT p_name FROM Products WHERE p_name LIKE \'W%\'\"

    WHERE 关键词的后面跟着用来过滤数据的条件,有了这些条件的帮助,只有满足一定标准的数据才会被查询出来。在以上的例子里,查询的结果只会得到名字以w 打头的p_name 记录。

    以上例子中,百分比符号(%)的含义是指示查询返回所有w 字母打头而且后面是任何数据甚至没有数据的记录条目。所以,在执行以上查询的时候, west 和 willow 就会从Products 表内被选取出来并存放在查询里。

    就像你看到的那样,只要仔细地设计SELECT 语句,你就可以限制recordset 中返回的信息量,多琢磨琢磨总能满足你的要求。

    这些啊还不过是掌握SQL用途刚起步。为了帮助你逐步掌握复杂的SELECT 语句用法,下面就让我们再来看一下关键的标准术语:比较运算符,这些玩意都是你在构筑自己的SELECT 字符串来获得特定数据时要经常用到的。

    WHERE子句基础

    在开始创建WHERE 子句的时候,最简单的方式是采用标准的比较符号,它们是 < 、 <= 、 > 、 >= 、<> 和 =。显然,你很快就能明白以下代码的含义和具体运行结果:

    以下为引用的内容:

    SELECT * FROM Products WHERE p_price >= 199.95
    SELECT * FROM Products WHERE p_price <> 19.95
    SELECT * FROM Products WHERE p_version = \'4\'

    注意: 这里你会注意到,最后一个例句中的数字4周围加了单引号。原因是这样的,在这个例子中的 \"4\" 是文本类型而非数字类型。

    3、比较运算符:LIKE、NOT LIKE和 BETWEEN

    比较运算符指定从表内取出数据的内容范围。你可以用它们来创建过滤器以便缩小recordset的范围,促使其只保存给定任务下你关心的信息。

    你已经在上面取出w打头记录的例子中看到了LIKE的用法。LIKE判定词是一个非常有用的符号。不过,在很多情况下用了它可能会带给你太多的数据,所以在用到它之前最好先开动脑筋多想想自己到底想获得什么数据。假设你想取出5位数字的SKU号码,而且其开头是1结尾是5,那么你可以用下划符(_)代替%符号:

    SQL =\"SELECT * FROM Products WHERE p_sku LIKE \'1___5\'\"

    下划符表示任意一个字符。所以在输入“1___5”的情况下,你的搜索就会限制在满足特定模式的5位数范围内了。

    假如你想反其道而行之,要找出所有不匹配“1___5”模式的SKU条目。那么你只需要在刚才语句例子中的LIKE前面加上NOT就可以了。

    BETWEEN

    假设你想取出一定范围内的数据,而且你事先知道范围的起点和终点,那么你不妨采用BETWEEN 判断词。现在就让我们假设你想选取给定表内范围在 1和 10之间的记录。你可以如下使用BETWEEN:

    …WHERE ID BETWEEN 1 AND 10

    或者你也可以采用已经熟悉的数学判断字句:

    …WHERE ID >= 1 AND ID >= 10

    4、联合语句

    我们到目前为止所谈到的SQL语句相对较为简单,如果再能通过标准的recordset循环查询,那么这些语句也能满足一些更复杂的要求。不过,何必非要拘泥在浅尝则止的基础水准之上呢?你完全可以再增加其他一些符号,比如AND、OR和NOT来完成更强大的功能。

    以下面的SQL语句为例:

    以下为引用的内容:

    SQL =\"SELECT c_firstname,c_lastname,c_email FROM customers WHERE c_email IS NOT NULL AND c_purchase =\'1\' OR c_purchase =\'2\' AND c_lastname LIKE \'A%\'\"

    就你目前所掌握的SQL知识,以上的例子也不难解释,不过上面的语句并没有很明白地让你看清条件字句是如何胶合在单一个SQL语句中的。

    多行语句

    在SQL语句不好懂的情况下,你不妨把整个语句分解为多行代码,然后在现有变量基础上逐步增加查询语句的各个组成部分并把它存在同一变量内:

    以下为引用的内容:
    SQL = \"SELECT c_firstname,c_lastname,c_emailaddress,c_phone\"
    SQL = SQL & \" FROM customers\"
    SQL = SQL & \" WHERE c_firstname LIKE \'A%\' and c_emailaddress NOT NULL\"
    SQL = SQL & \" ORDER BY c_lastname, c_firstname\"

    到了最后一句,SQL变量就包含了以下的完整SELECT 语句:

    以下为引用的内容:

    \"SELECT c_firstname, c_lastname, c_emailaddress, c_phone FROM customers WHERE c_firstname LIKE ‘A%’ and c_emailaddress NO NULL ORDER BY c_lastname,c_firstname\"

    整句照上面分解之后显然好读多了!在进行调试的时候,你或许更乐于多敲几个字符把程序改得更好读些。不过你可要记住了,在封闭引号之前或者在打开引号之后你需要增加空格,这样才能保证字符串连接起来的时候你没有把几个词凑到了一块。
    页数:第[0]页||第[1]页||

  • [时间:2008-10-27 15:10:12][点击:]

  • 上下篇文章加载中...
返回首页 | 关于站长 | 联系站长| 设计服务 | 建站资源 | 技术文章 | 娱乐中心 | 免费空间 | 友情链接 | 留言蜚语 | 网站地图| 网友投稿|RSS订阅 
QQ:277728291 联系方式:15824537062 mail:27772821@163.com
版权所有 2008-2018 PHP小戴个人门户站-编程技术和空间和文章共享-www.phpxd.com Copyright 2008 phpxd.com