符合中小企业对网站设计、功能常规化式的企业展示型网站建设
本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...
商城网站建设因基本功能的需求不同费用上面也有很大的差别...
手机微信网站开发、微信官网、微信商城网站...
1)首先你会不会修改一个数据,是真正明白操作的修改?
创新互联建站是专业的忻府网站建设公司,忻府接单;提供成都网站设计、成都做网站,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行忻府网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!
2)针对两个数据库各建一个连接,$link1和$link2,然后对后面操作数据库的操作复制一份,采用不同的连接做输入参数,这样就能同时修改两个数据库了。
实例化两条sql链接.
例如
$wdb = mysql_connect('localhost','root','123456','a1');//负责写入的数据库
$rdb = mysql_connect('192.168.xx.xx','root','123456','a2');//负责读的数据库
这样就可以链接两个数据库了。
写一段php代码
做两个数据库链接,第一个读取db1,然后生成Update SQL语句,更新db2就行,如果id在db中不存在,更新结果0行。
$db1 =mssql_connect('192.168.1.100','sa','') or die('can not connect to db server1');
mssql_select_db('db1',$db1);
$db2 =mssql_connect('192.168.1.200','sa','') or die('can not connect to db server2');
mssql_select_db('db2',$db2);
//读取db1数据中的数据
$result =mssql_query("selct * from table_name order by id",$db1);
if(false!=$result){
while($line=mssql_fetch_assoc($result)){
$sql =BuildUpdateSql($line,'id');
$rs =mssql_query($sql,$db2);
}
}
function BuidUpdateSql($data,$field='id'){
$sql ="";
if(empty($data)||!is_array($data))return $sql;
if(empty($field))$field='id';
$PRI =$data[$field];
$sql .="Update table_name2 Set ";
foreach($data as $key=$val){
$sql .=" {$key}='{$val}',";
}
$sql .=" Where {$field}={$PRI}";
return $sql;
}
也许是我孤陋寡闻了,似乎没有办法跨库关联查询吧。如果非要跨库关联,我能想到的办法就是把两边的数据查询出来并存入一个临时表,再查询临时表。不过这种方法只是用于不同库中相同或相似的表,比如有的数据量较大的分库项目。
在回过头来看你的项目需求,其实根本不需要跨库的。首先在任意一个库里创建一个表,在发送会议信息给会员的时候,除了这个表的主键之外,只需要记录会员的id和会议的id,这两个id分别从两个库里获取。
你如果要查看某条会议信息发送的详情,就通过这两个id分别从两个库里获取会员信息和会议信息。
你如果要查询出列表,用笨办法,因为你这个表肯定和会员或会议其中一个在一个库了,可以关联,然后在列表循环中逐条查询另一个数据,虽然这样有些影响性能,但是也比“跨库关联查询”好点,况且如果数据多的话,一般都是分页操作的话,一个列表最多二三十条记录,一次查询二三十也不会有太大影响。
另一个笨办法,就是把发送记录列表中所有需要列出的字段都记录在发送会议信息的记录表里,这样就不需要在循环查询另一个表了。但缺点就是这里面的数据就不能和会员以及会议信息的数据同步,除非你在更新会员以和会议信息的数据的同时更新这个表的数据。
但不管用哪种方式,我觉得都比“跨库关联查询”要好,即使真的有“跨库关联查询”的方法。
$conn1=mysql_connect('...','...','...'); //将第一个数据库连接资源保存到变量conn1中
$conn2=mysql_connect('...','...','...'); //将第二个数据库连接资源保存到变量conn2中
然后在执行查询操作时,指定使用哪个连接资源,如:mysql_query('select ....',$conn1);
希望可以帮到你,谢谢!