laravel数据库查询(Laravel获取所有的数据库表及结构的方法)
类别:编程学习 浏览量:771
时间:2021-10-07 00:40:12 laravel数据库查询
Laravel获取所有的数据库表及结构的方法遇到一个需求,需要修改数据库中所有包含email的字段的表,要把里面的长度改为128位。Laravel获取所有的表,然后循环判断表里面有没有email这个字段。
代码如下:
|
use Illuminate\Support\Facades\Schema; use DB; public function getDatabaseColumns() { $tables = DB::select( 'show tables' ); $tables = array_column( $tables , 'Tables_in_new_bcc_web' ); $columns = [ 'email' , 'user_name' , 'nick_name' , 'first_name' , 'last_name' ]; // dd(Schema::getConnection()); foreach ( $tables as $key => $value ) { foreach ( $columns as $k => $v ) { if (Schema::hasColumn( $value , $v )) { $table [] = $value ; }; } // $columns[] = Schema::getColumnListing('users'); } $table = array_unique ( $table ); dd( $table ); } |
|
Schema::getColumnListing( 'user' ); Schema::hasColumn( $table , $column_name ) |
这里记一笔,比知道有没有更好的方法一步获取到当前连接的数据库里面的所有的表,我是用原生的sql语句show tables查出所有表,然后取出Tables_in_new_bcc_web这一列,然后才得到所有的表名,然后再去循环。
找到一个更棒的方式:
|
public function getDatabaseColumns() { $tables = array_map ( 'reset' , \DB::select( 'SHOW TABLES' )); $columns = [ 'email' , 'user_name' , 'nick_name' , 'first_name' , 'last_name' ]; foreach ( $tables as $key => $value ) { foreach ( $columns as $k => $v ) { if (Schema::hasColumn( $value , $v )) { $table [] = $value ; }; } } $table = array_unique ( $table ); dd( $table ); } |
以上这篇Laravel获取所有的数据库表及结构的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持开心学习网。
原文链接:https://blog.csdn.net/zhezhebie/article/details/78589812
您可能感兴趣
- laravel异步日志(laravel异步监控定时调度器实例详解)
- laravel使用队列(基于laravel where的高级使用方法)
- laravel框架如何查询空的信息(Laravel 已登陆用户再次查看登陆页面的自动跳转设置方法)
- 关于laravel的日常(解决在laravel中auth建立时候遇到的问题)
- laravel判断变量为空(关于laravel 数据库迁移中integer类型是无法指定长度的问题)
- laravel框架如何查询空的信息(使用Laravel中的查询构造器实现增删改查功能)
- laravel语法有哪些(对laravel in 查询的使用方法详解)
- laravel获取数据(laravel 判断查询数据库返回值的例子)
- laravel获取访问来路的函数(Laravel实现搜索的时候分页并携带参数)
- laravel多线程处理请求(Laravel 6 将新增为指定队列任务设置中间件的功能)
- laravel事件返回错误数据(laravel Validator ajax返回错误信息的方法)
- laravel数据库切换(实现laravel 插入操作日志到数据库的方法)
- laravel的验证规则(解决在Laravel 中处理OPTIONS请求的问题)
- laravel数据库查询(Laravel获取所有的数据库表及结构的方法)
- laravel配置文件动态化(在Laravel 的 Blade 模版中实现定义变量)
- laravel提交数据时间(laravel实现查询最后执行的一条sql语句的方法)
- 感冒要吃什么药(猫咪感冒要吃什么药)
- 下雪会怎样(下雪怎样画)
- 白蓝色穿搭(白蓝色衣服配什么裤子)
- 天空是什么颜色(天空是什么颜色的英语)
- 高马尾扎发(高马尾扎发教程视频)
- 这里输入关键词(请手动输入关键词)
热门推荐
- sql数据库安装概要(详解将DataGrip连接到MS SQL Server的方法)
- sqlserver数据库备份怎么还原(SQL Server2012数据库备份和还原的教程)
- nginx配置两个前端web服务(你真的了解如何将Nginx配置为Web服务器吗)
- html5 canvas touch(html5 canvas手势解锁源码分享)
- pythonrequests怎么导入模块(Python3使用requests模块实现显示下载进度的方法详解)
- python如何判断两个数组相同(Python实现的合并两个有序数组算法示例)
- ros必须在ubuntu安装吗(详解ubuntu20.04下CLion2020.1.3安装配置ROS过程说明)
- python pandas dataframe 查询(Python实现从SQL型数据库读写dataframe型数据的方法基于pandas)
- 磐石云香港VPS服务器怎么样?磐石云香港VPS CN2线路测评(磐石云香港VPS服务器怎么样?磐石云香港VPS CN2线路测评)
- docker容器启动后怎么进入(Docker 退出container后保持继续运行的操作)
排行榜
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9