🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
* [ ] 功能 * 可以动态切换连接附加数据库 * 参数 | 参数名 | 参数类型 | 参数说明 | 默认值 | | :---: | :---: | :---: | :---: | | $name | array 或者 string | 数据库配置名称 | 空字符 | | $link | int 或者 string | 选择的附加数据库序号 | 0 | * 场景:当前项目的数据库配置 ~~~ <?php return [ 'user' => [ 'user' => [ 'type' => 'mysql', // 数据库类型 'charset' => 'utf8mb4', // 编码 'mode' => 1, // 默认执行方式(数据库不设测默认为1)1=预处理语句 'link' => 1, // 数据库连接数量 cli模式底下生效(默认为10个) 'server' => ' 127.0.0.1', // 数据库IP 'port' => '3306', // 端口 (不设此值默认为3306) 'username' => 'root', // 用户名 'password' => 'root', // 密码 'name' => 'user', // 用户数据库 'table' => 'user_', // 用户数据库的表前缀 'data' => [ // 附加数据库, 该值的 key 值 + 1为数据库的附加库序号 [ 'name' => 'goods', // 商品数据库名称 'table' => 'goods_' // 商品数据库的表前缀 ], [ 'name' => 'order', // 订单数据库名称 'table' => 'order_' // 订单数据库的表前缀 ], ] ], ] ]; ~~~ * goods 数据库的 goods_category 表有 2 条数据,数据为: goods_category 表 | category_id | category_name | | :---: | :---: | | 1 | 服装| | 2 | 保健品 | | 3 | 家居 | * [ ] 从 user 数据库动态切换至 goods 数据库,查 category 表 用法一:数组模式 ~~~ // 选择数据库 $link_data = array( 'goods', 1 ); $data = mysql\User::table('account')->link( $link_data )->table('category')->select(); ~~~ 执行的 sql 语句: ~~~ select * from goods.goods_category ~~~ 用法二:字符串方式 ~~~ // 选择数据库 $link_db_name = 'goods'; // 附加数据库序号 $link_num = 1; $data = mysql\User::table('account')->link( $link_db_name, $link_num )->table('category')->select(); ~~~ 执行的 sql 语句: ~~~ select * from goods.goods_category ~~~ 查询结果: ~~~ array( array( 'category_id' => 1, 'category_name' => '服装', ), array( 'category_id' => 2, 'category_name' => '保健品', ), array( 'category_id' => 3, 'category_name' => '家居', ), ); ~~~