Php 虚拟专用数据库,具有雄辩的
我希望有一个看似独立但实际上位于一个MySQL数据库中的可变数量数据库 这些独立的实例应该可以在应用程序中创建和销毁,而普通用户在单个数据库实例中工作时,系统管理员可以看到所有这些实例 这个概念似乎类似于Oracle的虚拟专用数据库 我愿意在Laravel应用程序中实现该功能,但我不确定如何实现 我会将列Php 虚拟专用数据库,具有雄辩的,php,mysql,laravel-5,eloquent,Php,Mysql,Laravel 5,Eloquent,我希望有一个看似独立但实际上位于一个MySQL数据库中的可变数量数据库 这些独立的实例应该可以在应用程序中创建和销毁,而普通用户在单个数据库实例中工作时,系统管理员可以看到所有这些实例 这个概念似乎类似于Oracle的虚拟专用数据库 我愿意在Laravel应用程序中实现该功能,但我不确定如何实现 我会将列instance\u id添加到我想要实例化的表中,简单的方法是在每个查询中包含类似where('instance\u id',Auth::user()->instance\u id)的内容,但
instance\u id
添加到我想要实例化的表中,简单的方法是在每个查询中包含类似where('instance\u id',Auth::user()->instance\u id)
的内容,但将其添加到每个查询中是一场噩梦
我如何才能巧妙地隐藏它,以便在需要实例化模型时,可以
使用
某些东西或扩展
改进的模型类。我想这样做,如果我指定了实例,我也可以忽略实例来查询整个表。由于mysql中没有本机支持,问题是:在where子句(假设每个用户的数据结构相同)或from子句中区分用户的数据更容易吗。@Shadow,对不起,你说的“from子句”是什么意思?要在不同的表中分隔数据?这意味着每当创建/删除一个新项目时,我必须允许用户创建/删除表…您有两个选项来分隔用户数据:使用同一个表,但向每个记录添加用户id或使用不同的表。对于后者,您需要区分from子句中的各个表。由于mysql中没有本机支持,问题是:在where子句(假设每个用户的数据结构相同)或from子句中区分用户数据更容易吗。@Shadow,抱歉,“from子句”是什么意思?要在不同的表中分隔数据?这意味着每当创建/删除一个新项目时,我必须允许用户创建/删除表…您有两个选项来分隔用户数据:使用同一个表,但向每个记录添加用户id或使用不同的表。对于后者,您需要区分from子句中的各个表。