如何从laravel中的表中选择所有列名?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何从laravel中的表中选择所有列名?相关的知识,希望对你有一定的参考价值。
我试图从表Teller中获取所有列名
功能:
public function getTableColumns($tables)
{
return DB::select(DB::raw('SELECT
COLUMN_NAME,
DATA_TYPE,
COLUMN_DEFAULT
FROM
INFORMATION_SCHEMA.COLUMNS
WHERE
table_name = `Teller`'));
}
答案
您可以通过简单地完成所有列名称...
public function getTableColumns($table)
{
return DB::getSchemaBuilder()->getColumnListing($table);
// OR
return Schema::getColumnListing($table);
}
另一答案
从模型中获取表名称
$product = new Product;
$table = $product->getTable();
print_r($table);
另一答案
如果您有多个数据库连接,请查看以下内容:
添加到php脚本的顶部
use IlluminateSupportFacadesSchema;
检索代码中的任何位置
使用数据库连接
$columns = Schema::Connection('business')->getColumnListing('users'); // 'business' is your database connection
echo "<pre>";
print_r($columns);
exit();
没有数据库连接
$columns = Schema::getColumnListing('users');
echo "<pre>";
print_r($columns);
exit();
另一答案
要从表中获取所有行:
$users = DB::table('users')->get();
此方法将直接返回列的值:
$email = DB::table('users')->where('name', 'John')->value('email');
参考:
另一答案
你可以简单地写:
public function getTableColumns($tables)
{
return DB::select(
DB::raw('SELECT * FROM `Teller`')
);
}
如果你有Teller
模型,你也可以使用Teller::all();
更新
要获取所有列名称,您可以运行SHOW FIELDS Teller
另一答案
你可以用它
DB::table('table_name')->get();
以上是关于如何从laravel中的表中选择所有列名?的主要内容,如果未能解决你的问题,请参考以下文章
从一个表中选择 Laravel 5.1 中另一个表中不存在的所有记录