`
datoplay
  • 浏览: 1616331 次
文章分类
社区版块
存档分类
最新评论

coldfusion动态链接选择不同的数据库。

 
阅读更多

coldfusion的cfquery里,使用在admin里定义好的datasource很方便。但是如果想直接访问不是在datasource里定义好的默认数据库。

例如, 如果每个使用者的数据库是不同的,就会有这个问题。不能在写如下的语句。会造成错误的。

注意:这个写法有可能导致你的程序出错。

<cfquery name="abc" datasource="myds">

use database1

select * from products

</cfquery>

这时,myds里的数据库就会被改变。直到你改过来或者服务重启动才恢复。

你可以使用以下2中方法:

1、使用sql语句的带数据库的表示方法。如例子:

<cfquery name="abc" datasource="myds">

select * from database1..products

</cfquery>

2、使用cfquery的connectionstring。只要把链接串的指向的数据库就可以。但是这个方法,有可能在出错的时候,让别人看到数据库的密码。当然,这个connectionstring是放在session里,在客户登录后就生成。

<cfquery name="abc" connctionstring="#session.你的动态connectionstring#">

select * from database1..products

</cfquery>

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics