重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
?php
创新互联公司服务项目包括蚌山网站建设、蚌山网站制作、蚌山网页制作以及蚌山网络营销策划等。多年来,我们专注于互联网行业,利用自身积累的技术优势、行业经验、深度合作伙伴关系等,向广大中小型企业、政府机构等提供互联网行业的解决方案,蚌山网站推广取得了明显的社会效益与经济效益。目前,我们服务的客户以成都为中心已经辐射到蚌山省份的部分城市,未来相信会继续扩大服务区域并继续获得客户的支持与信任!
$servername = "localhost";
$username = "root";
$password = "password";//你的mysql密码
$dbname = "myDB";//选择数据库
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检测连接
if ($conn-connect_error) {
die("Connection failed: " . $conn-connect_error);
}
$sql = "SELECT id, firstname, lastname FROM MyGuests";
$result = $conn-query($sql);
if ($result-num_rows 0) {
// 输出每行数据
while($row = $result-fetch_assoc()) {
echo "br id: ". $row["id"]. " - Name: ". $row["firstname"]. " " . $row["lastname"];
}
} else {
echo "0 results";
}
$conn-close();
?
select * from databasea.table1 union select * from databaseb.table2 ;
不推荐垮库使用.弊端太多
如果是mysql里面两个不同的数据库,应该是可以直接使用 [数据库名称].[表名]来关联的。TP指定的数据库,是因为他要缓存这个数据库的表字段等。
试试看行不行,我测试通过: SELECT a.*,b.* FROM table1 a LEFT JOIN db2.table2 b ON a.id=b.id
也许是我孤陋寡闻了,似乎没有办法跨库关联查询吧。如果非要跨库关联,我能想到的办法就是把两边的数据查询出来并存入一个临时表,再查询临时表。不过这种方法只是用于不同库中相同或相似的表,比如有的数据量较大的分库项目。
在回过头来看你的项目需求,其实根本不需要跨库的。首先在任意一个库里创建一个表,在发送会议信息给会员的时候,除了这个表的主键之外,只需要记录会员的id和会议的id,这两个id分别从两个库里获取。
你如果要查看某条会议信息发送的详情,就通过这两个id分别从两个库里获取会员信息和会议信息。
你如果要查询出列表,用笨办法,因为你这个表肯定和会员或会议其中一个在一个库了,可以关联,然后在列表循环中逐条查询另一个数据,虽然这样有些影响性能,但是也比“跨库关联查询”好点,况且如果数据多的话,一般都是分页操作的话,一个列表最多二三十条记录,一次查询二三十也不会有太大影响。
另一个笨办法,就是把发送记录列表中所有需要列出的字段都记录在发送会议信息的记录表里,这样就不需要在循环查询另一个表了。但缺点就是这里面的数据就不能和会员以及会议信息的数据同步,除非你在更新会员以和会议信息的数据的同时更新这个表的数据。
但不管用哪种方式,我觉得都比“跨库关联查询”要好,即使真的有“跨库关联查询”的方法。
1.建立两个数据库连接,查询的时候分别调用。
2.使用dbname.tablename的方式来写from,或者join(前提是你用于连接MYSQL的帐号必须同时可以访问这两个库)
例如:dba,dbb
select * from dba.table1 as t1
join dbb.table1 as t2 on t1.id = t2.id