perl - 为什么不建议使用create = dynamic?

标签 perl sqlite dbi catalyst

我正在使用下面给出的命令创建数据库模型。

script/myapp2_create.pl model TestDatabase DBIC::Schema \ MyApp2::Schema::TestDatabase create=dynamic \ dbi:SQLite:/tmp/database


我得到一个警告,上面写着:

************************************ WARNING **********************************
* create=dynamic is DEPRECATED, please use create=static instead.             *
*******************************************************************************


我可以知道为什么弃用了create = dynamic吗?我知道


create = dynamic告诉DBIC每次
启动应用程序以确定架构(表格布局,
外键关系等)


但是这怎么了?为什么首选create = static?

最佳答案

the Catalyst manual


尽管DBIx :: Class提供了对create = dynamic模式的支持,该模式可以在每次应用程序启动时自动读取数据库结构,但不再建议使用它。虽然它可以制作“浮华”的演示,但可以很快实现对我们下面使用的create = static模式的使用,并提供许多优点(例如,将自己的方法添加到整个DBIC框架的能力,我们将在第4章中看到。

关于perl - 为什么不建议使用create = dynamic?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9528539/

相关文章:

perl - CGI 脚本未运行,内部服务器错误 (500) 错误

perl - Catalyst 事件循环一次仅到达一个客户端

sql - 在SQLite中存储/查询多个值

php - Laravel 6 PHPUnit 测试 - 找不到驱动程序(SQL : PRAGMA foreign_keys = ON;))

mysql - DBI::DatabaseError:用户错误访问被拒绝当使用 Ruby DBI 连接远程 Mysql 服务器时

perl - Perl使用系统提取 tar

python - 使用 SQLite 查询日期时出现 ValueError

Perl 错误:在串联中使用未初始化的值 $DBI::err

mysql - DBI:如果第一个数据库不存在,则连接到另一个数据库

perl - 从 GNU 并行获取退出状态值