整个持久层是一个相当大而复杂的laravel组件。是否有人已经深入研究过这个问题,并且可以用几句话来解释一下,最新情况下是什么?
INFORMATION_SCHEMA.COLUMNS
的每个请求。这是否意味着,laravel将为每个简单的SQL查询提供iusse两个查询(第一个获取列/表定义?)hasColumn
会不可避免地导致SQL查询,只是为了检索元数据/表定义?答案 0 :(得分:3)
据我所知,你是对的,Eloquent不会缓存或存储列元数据。但这并不意味着每个查询都需要一秒钟来请求信息模式。查询构建器只是假定您知道哪些列名是合法的,并创建并发送查询。这意味着,如果您选择一个未知列,您将获得异常!最后hasColumn
导致SQL查询。