您现在的位置: 动易技术中心 >> 动易产品知识库 >> 动易2006常见问题 >> 正文
动易系统动态标签基础知识(1)


三、SQL基础教程(最简单的查询)

  基本知识:

  简单的SQL语句由五个标准段的结构构成:
  例:select top 10 ArticleID,ClassID,Title,Author,Hits from PE_Article  where Deleted=false and Status=3 order by ArticleID desc

  第一段 选择段:select 选择操作,从数据库中选择
  第二段 输出主表段:top 值 主表名,主表名 只选择符合要求的前几条相应主表的内容,如:top 10 ArticleID,ClassID,Title,Author,Hits,显示前10条包含文章ID、栏目ID、文章标题、作者、点击数的信息。其中ArticleID,ClassID(指定输出主表名称,多个主表以“,”隔开)。
  第三段 从属字段:from 字段内容 从哪里查、查什么。如from PE_Article(查询PE_Article字段),名字也可以简写,如PE_Article可以简写成Article。要注意填写的字段必须是系统数据库中存在的字段名,并且要与前面的主表内容相对应,否则就会出错。
  第四段 条件约束段:where 语句 条件约束语句部分(即规则语句)。定义内容如:定义显示所有内容如field=0,定义显示大于、小于、等于、相似于、'%0(前面忽略后面等于0即可)条件下的内容等等条件语句。
  动易的文章表最常用的:动易表中的“Deleted”表示文章是否删除状态,这个条件经常要加上的,“Deleted=false”表示不是被删除的文章才被输出显示出来。动易表中的“Status”表示文章状态值,“Status=3”表示输出显示终审通过的文章。一般有这二个条件就不会输出错误的内容出来。
  例:select top 2 ArticleID,Title from Article where Deleted=false and Status=3 。如果有二个条件,可以继续加上“and ”(并列条件)或“or”(或条件)进行连接。

  第五段 排序段:order by 语句  排序定义。类似于动易系统超级函数标签中按时间、ID等排序的参数设置。如order by ArticleID ,指按文章ID从小到大进行正序排序。如果要倒序排列,可以加上“desc”,如order by ArticleID desc(“asc”表示正序排列)。
  例:select top 2 ArticleID,Title from Article where Deleted=false and Status=3 order by ArticleID desc

  到这里,简单的SQL语句基本讲完了。简单地说,写全了选择段、输出主表段、从属字段、条件约束段排序段这五段内容即可完成简单的SQL语句的书写。一般建议您使用可视化的编辑方式操作,这样写出来的动态标签不容易出错。

注意:若您在操作网站后台的动态标签时,您本网站的Access数据库正被同时Microsoft Access软件打开着,则会出现“SQL查询失败,错误原因:表正被用户以独占方式打开”的错误提示。此时关闭Microsoft Access软件后重新操作即可。

操作练习:
  练习题目:制作一个列出显示文章列表、文章标题、作者、点击数、发表时间的动态标签查询语句
  答案参考:select top 10 ArticleID,Title,Author,Hits,UpdateTime from PE_Article  
  提示:若操作正确,则会进入动态标签操作第二步,若提示错误则退回第一步再修改。

  添加动态标签(第二步)界面效果:

  在动态标签第二步操作中:
  “查询语句”内容框中的内容是不能再修改的。
  “字段列表”中显示的是系统自动从查询语句中提取出来的字段列表,以方便我们构建下面标签内容(即标签模板)时所用。每点击一个字段列表,则会弹出相应的列表属性设置对话框。

  下面讲解“标签内容”部分,先从理论上了解一下动态标签内部使用标签。

三、动态标签内部使用标签的说明

  动态标签的模板是独立的,与系统的页面模板不同,它有自己独特使用的标签,我们称为动态标签的“内部使用标签”。动态标签的内部使用标签总共有六类:

  1、SQL查询语句专用特殊标签:
  {$Now}
  {$NowDay}
  {$NowMonth}
  {$NowYear}
  {$PE_True}
  {$PE_False}
  {$PE_Now}
  {$PE_OrderType}
  只能放在语句中,解决一些运用时的特殊问题。目的是为了兼容AC与SQL版。
  提示:以上的标签不能用于动易系统的模板设计中,只能用于动态标签构建SQL语句中使用。您可以直接在界面中点击“参数列表”中的链接进行可视化操作。
  这些标签的具体含义在以后课程中进行运用讲解。

  2、输入标签:
  {input(0)}
  这个输入标签是用于接收一些动态函数标签参数时使用,可通用于SQL语句与标签模板中。
  动态函数标签支持很多参数,您可以自定义相应的参数,利用本输入标签参数是按顺序进行接收和替换。这本标签的具体含义在以后“动态函数标签”课程中进行运用讲解。

  3、外循环标签:
  {Loop}
  循环内容……
  {/Loop}
  仅用于标签模板{Loop}{/Loop}所定义部分的内侧。
  作用:定义循环体部分,即以标签定义显示循环体(循环体即为需要循环的内容),以{Loop}{/Loop}定义循环区域:{Loop}开始循环内容,{/Loop}结束循环内容。

  例1 循环一行内容:
    <table>
    {Loop}
    <tr><TD></TD></TR>
    {/Loop}
    </table>

  例2 循环二行内容:
    <table>
    {Loop}
    <tr><TD></TD></TR>
    <tr><TD></TD></TR>
    {/Loop}
    </table>

  注意:一个动态标签模板中只能有一个循环体。若要循环多个,则每需要一个循环体就要添加一个动态标签,同样查询同样循环输出。

  4、内循环标签:
  {Infobegin}
  循环内容……
  {/Infoend}
  仅用于标签模板中{Loop}{/Loop}所定义部分的内侧,如:我们要显示一个文章列表中奇数行(1、3、5……行)、偶数行(2、3、4……行)的背景不同,并且循环显示的效果(类似于动易超级函数标签中的CssName1、CssName2的定义效果)。
  作用:定义循环体内的单一记录模板。

  例1 单行定义:
    <table>
    {Loop}
    {Infobegin}
    <tr><TD></TD></TR>
    {Infoend}
    {/Loop}
    </table>

  例2 隔行背景效果定义:
    <table>
    {Loop}
    {Infobegin}
    <tr CLASS="AT1"><TD></TD></TR>
    {Infoend}
    {Infobegin}
    <tr CLASS="AT2"><TD></TD></TR>
    {Infoend}
    {/Loop}
    </table>
  例2中隔行背景效果定义输出10条记录的效果:
    <table>
    <tr CLASS="AT1"><TD></TD></TR>
    <tr CLASS="AT2"><TD></TD></TR>
    <tr CLASS="AT1"><TD></TD></TR>
    <tr CLASS="AT2"><TD></TD></TR>
    <tr CLASS="AT1"><TD></TD></TR>
    <tr CLASS="AT2"><TD></TD></TR>
    <tr CLASS="AT1"><TD></TD></TR>
    <tr CLASS="AT2"><TD></TD></TR>
    <tr CLASS="AT1"><TD></TD></TR>
    <tr CLASS="AT2"><TD></TD></TR>
    </table>
  本效果可以进一步拓展成指定列数的表格等效果,大家可以进一步思考一下如何内循环标签的进一步应用。实例可以参考本文修改五中的说明。

  5、字段标签:
  {$Field(参数1,参数2)}
  仅用于标签模板中{Infobegin}{Infoend}所定义部分的内侧。本标签功能重要,是主管输出的标签。“外循环标签”、“内循环标签”仅用于定义按一定规则进行循环,“字段标签”指定从数据库中提取出来的按什么样的格式来显示。
  作用为:显示字段内容。

  例:
    <table>
    {Loop}
    {Infobegin}
    {$Field(参数1,参数2)}
    {Infoend}
    {/Loop}
    </table>
  本标签内容可以以可视化方式进行编辑,不再具体讲解,以后通过实例课程进行示范说明。

  6、特别标签:
  {$AutoID}:依次输出记录行数,指按指定选择的结果进行输出。
  {$totalPut} :输出本标签查询到的全部记录数,可用于分页显示时显示查询的全部记录数。
  仅用于标签模板中。

上一页  [1] [2] [3] [4] 下一页

文章录入:雅虎    责任编辑:雅虎 
  • 上一篇文章:

  • 下一篇文章:
  • 发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
    动易SiteFactory标签说明
    动易2006网站标签说明列表
    动易用户手册
    联系我们 | 关于动易 | 网站地图 | 相关证书 | 合作伙伴 | 招贤纳士 | 法律条款 | 隐私权声明
    安全上网网上报警
    动易网络科技有限公司版权所有 © 2003-  粤ICP备05004015号
    公安备案编号:4406063010734 本站基于 PowerEasy® SiteWeaver™ 制作