在 SELECT 查询生成器中使用 AES_DECRYPT - Laravel
Using AES_DECRYPT in SELECT Query Builder - Laravel
我正在尝试从我们的合作伙伴提供的 mysql 数据库中解密数据。
他们在 mysql AES_ENCRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))
中使用它加密
在我的例子中,我试图在我的 laravel 代码中使用 AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey'))) as f1
。
像这样:
$query = DB::connection('db2')->table('tbsample')->select("fld_id", "AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))")->get();
我遇到了这样的错误:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'RA3019')))' in 'field list' (SQL: select `fld_id`, `AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'RA3019')))` from `tbsample`)
我一直在寻找如何在我的查询中使用 AES_Decrypt,但运气不在我这边。提前致谢。
使用\DB::raw()
或selectRaw
:
$query = DB::connection('db2')->table('tbsample')->select("fld_id", \DB::raw("AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))"))->get();
或者
$query = DB::connection('db2')->table('tbsample')->selectRaw("fld_id, AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))")->get();
我正在尝试从我们的合作伙伴提供的 mysql 数据库中解密数据。
他们在 mysql AES_ENCRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))
在我的例子中,我试图在我的 laravel 代码中使用 AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey'))) as f1
。
像这样:
$query = DB::connection('db2')->table('tbsample')->select("fld_id", "AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))")->get();
我遇到了这样的错误:
SQLSTATE[42S22]: Column not found: 1054 Unknown column 'AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'RA3019')))' in 'field list' (SQL: select `fld_id`, `AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'RA3019')))` from `tbsample`)
我一直在寻找如何在我的查询中使用 AES_Decrypt,但运气不在我这边。提前致谢。
使用\DB::raw()
或selectRaw
:
$query = DB::connection('db2')->table('tbsample')->select("fld_id", \DB::raw("AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))"))->get();
或者
$query = DB::connection('db2')->table('tbsample')->selectRaw("fld_id, AES_DECRYPT(fld_code, md5(CONCAT(fld_id, 'somekey')))")->get();