>  기사  >  백엔드 개발  >  Thinkphp3.1 跨库连接数据库。

Thinkphp3.1 跨库连接数据库。

WBOY
WBOY원래의
2016-06-23 13:57:221065검색

在配置文件里首页默认的是连接mysql 然后我在下面加了个数组:
//mssql配置
'DB_MSSQL'  =>array(
//'DB_CHARSET'=>'GBK2312',
'DB_TYPE'   => 'mssql',
'DB_HOST'   => '152.198.11.156',
'DB_NAME'   => 'TOOT',
'DB_USER'   => 'sa',
'DB_PWD'    => '123456',
'DB_PORT'   => '1433',
'DB_PREFIX' => '',
  ),

然后在
public function index()
{
$user= M('user','TOOT');
$user->db(1,'TOOT');
$info = $user->select()->limit(10); 
dump($info);
$this -> display();
}

程序出错,连接不上数据库!


回复讨论(解决方案)

参数对了没?数据库是不是远程连接?是的话是不是允许远程连接了?
先把出错信息贴出来。。。。。。。。

允许远程连接,我直接php是可以的。(错误类型:500)

怎么感觉与这个描述不一样  ThinkPHP3.1新特性 多数据库操作的完善

怎么感觉与这个描述不一样  ThinkPHP3.1新特性 多数据库操作的完善

他描述的都是两个mysql 如果是mysql我是可以连接的,现在就是mssql连接不上。

怎么感觉与这个描述不一样  ThinkPHP3.1新特性 多数据库操作的完善



按照他的描述 $User = M('User','think_','DB_CONFIG2'); 

我的$user= M('user',‘’,'TOOT');这样写也应该可以吧,我的mssql表没有前缀。

参数对了没?数据库是不是远程连接?是的话是不是允许远程连接了?
先把出错信息贴出来。。。。。。。。




[ 错误信息 ]
没有定义数据库配置

连接时要用 D 函数吧?
mssql 没有 DESCRIBE 指令,应该不能自动创建模型

我用M是可以同时操作两个mysql,是不是我的mssql配置有问题?
mssql 直接php是可以携程的

mysql 有 DESCRIBE 指令,可以自动创建模型,所以不会有连接问题

DESCRIBE tbl_name 指令的作用是获取字段信息,类似于

Field	Type		Null	Key	Default	Extra id	varbinary(20)	NO    money	bigint(20)	NO		0  flag	char(3)		NO    x	varchar(50)	NO 


参数对了没?数据库是不是远程连接?是的话是不是允许远程连接了?
先把出错信息贴出来。。。。。。。。




[ 错误信息 ]
没有定义数据库配置

看这错误信息,不是很明了么?数据库配置名不存在。
$user->db(1,'TOOT');这个是动态调用,这里的TOOT应该改成你配置文件里的名称DB_MSSQL



参数对了没?数据库是不是远程连接?是的话是不是允许远程连接了?
先把出错信息贴出来。。。。。。。。




[ 错误信息 ]
没有定义数据库配置

看这错误信息,不是很明了么?数据库配置名不存在。
$user->db(1,'TOOT');这个是动态调用,这里的TOOT应该改成你配置文件里的名称DB_MSSQL

就是修改成DB_MSSQL提示:没有定义数据库配置

有人连接过 mssql吗、

TP不熟悉,你断点跟踪下程序就知道怎么回事了。

还是没有解决啊。

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.