stats4sd / laravel-sql-views
一个小型包,帮助自动化Laravel项目中MySQL视图的创建和更新。
v1.2.0
2023-10-12 11:06 UTC
Requires (Dev)
- mockery/mockery: ^1.1
- orchestra/testbench: ~3|~4
- phpunit/phpunit: ^8.0
- sempro/phpunit-pretty-print: ^1.0
This package is auto-updated.
Last update: 2024-09-12 13:11:45 UTC
README
一个小型包,帮助自动化MySQL视图和存储过程的创建和更新。
此包允许你在Laravel代码库中存储所需的每个MySQL视图和存储过程的查询定义,并允许你直接编辑SQL查询字符串,而不是使用迁移文件。这在以下情况下很有用
- 你经常需要使用真实数据创建或更新SQL视图,例如作为数据分析工作流程的一部分。
- 你有一组复杂的查询,你基本上需要在迁移文件中编写原始查询。
安装
通过Composer
$ composer require stats4sd/laravel-sql-views
使用方法
该包包含一个单个的命令行工具 php artisan updatesql
。此命令执行以下两项操作
- 它将在你的数据库中创建或更新基于你的
database/views
目录中的文件的SQL视图。它将为每个找到的.sql
文件创建一个视图,使用文件名作为视图名称,使用内容作为查询定义。 - 它将在你的数据库中创建或更新基于你的
database/procedures
目录中的文件的SQL存储过程。它将直接运行该目录中的所有.sql
文件。目的是包含创建所需存储过程的脚本,但理论上你可以包含任何你想定期运行的SQL代码。
使用方法
- 将你的查询定义放在你的
database/views
目录中的.sql文件中。每个视图需要1个文件。不要包含"CREATE OR REPLACE VIEW"部分,只需包含查询定义本身。 - 将你想要运行的任何额外的SQL脚本(例如创建存储过程)放入
database/procedures
文件夹。 - 运行命令
php artisan updatesql
。
它将递归搜索文件夹,因此你可以根据需要将视图组织到子文件夹中。
该包附带一个小的配置文件。
php artisan vendor:publish --tag=sqlviews.config
要禁用自动创建 database/views
和/或 database/procedures
文件夹,你可以添加以下 .env
变量 :-
SQL_VIEWS_REGISTER_VIEWS_FOLDER=false
SQL_VIEWS_REGISTER_PROCEDURES_FOLDER=false
请注意,如果你没有很好地理解此包,禁用文件夹创建将导致你遇到问题。
变更日志
请参阅变更日志以获取有关最近更改的更多信息。
贡献
请参阅contributing.md以获取详细信息和一个待办事项列表。
安全
如果你发现任何安全相关的问题,请通过作者电子邮件而不是使用问题跟踪器。
鸣谢
- [Dave Mills][https://github.com/dave-mills]
- Stats4SD
许可证
MIT许可证。请参阅许可证文件以获取更多信息。