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

来源:互联网 发布:python product 编辑:程序博客网 时间:2024/05/01 00:10

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>

 

原创粉丝点击