好了今天,我们开始要从数据库里抓东西了。 这次课程由DOLLOM我为大家讲解。
保存了以下代码,使用URL:HTTP://127.0.0.1/home.cfm来得到HTML的内容。
SELECT * FROM employee_info
| 编号 | 职员姓名 | 工资 |
| #employee_id# | #employee_name# | #employee_salary# |
显示为以下情况
编号
职员姓名
工资
1
王老虎
2000
2
周星驰
2500
3
张三丰
2300
...
...
...
我们来看看代码中用到哪些CFML语言
1.
SELECT * FROM employee_info
SELECT 列名 FROM 表名
是一个标准的SQL语法,它的意思是从一个数据库表里,把数据抓出来。常用的还有UPDATA更新,INSERT添加,DELETE删除等。不管你用的是何种ODBC数据库,都支持SQL语法。
CFQUERY标记使用了两个属性name和datasource
datasource是想要访问的数据源的名称,上节课我们在ColdFusion ADMINISTRATOR里定义的ODBC名称。你可能拥有好几个数据库,所以datasource必须要指定一个。
NAME也是必须要有的,相当于在网页中起了一个变量名,暂放Select的结果,以后我们就可以直接调用NAME里的数据了,只需要查询数据库一次。
2.
我们又看到CFOUTPUT了,这次有些不同。我们使用QUERY属性指定了CFOUTPUT将输出ABC里的内容。ABC目前存放了SELECT * FROM employee_info的结果,其中包括employee_id,employee_name,employee_salary三个列的数据。在
你可以利用SQL语法的特性,安排显示的顺序,如SELECT * FROM employee_info ORDER BY employee_salary DESC ,以工资从高到低的方式排序。或者限定哪些内容可以输出等等。我们可以去参考一些SQL的语法书籍。不同数据库之间的SQL语法,稍有区别。
恩,现在我们为EMPLOYEE数据库里添加一个数据列,名为employee_address并存放一些职员的家庭住址在里面。你也可以直接在这里下载,覆盖先前的数据库文件。接下来,我们把home.cfm添加一些代码,修改成以下情况。
SELECT * FROM employee_info
| 编号 | 职员姓名 | 工资 |
| #employee_id# | #employee_name# | #employee_salary# |
显示为以下情况
编号
职员姓名
工资
1
王老虎
2000
2
周星驰
2500
3
张三丰
2300
...
...
...
哦,我们为职员姓名做了一个URL连接到HOME2.CFM上,并传递了一个参数。
home2.cfm?no=1 (#employee_id#,已经被CFOUTPUT转化成值了)
?代表把URL与正在传递的参数隔开。
本例中我们只传递一个参数,如果传递两个以上的话,需要用&号阁开如home2.cfm?no1=xxx&no2=yyy
现在我们来保存HOME2.CFM的文件
SELECT * FROM employee_info where employee_id=#url.no#
| 编号 | 职员姓名 | 工资 | 家庭住址 |
| #employee_id# | #employee_name# | #employee_salary# | #employee_address# |
显示为下列情况
编号
职员姓名
工资
家庭住址
1
王老虎
2000
陕西老虎村
简单吗?利用SELECT * FROM employee_info where employee_id=#url.no# 中where 来把上一页传递过来的NO参数值与employee_id对比,来决定SELECT的查询条件,最后输出。
恩,这次课程结束,下节课我们继续。

