Greatings, 나는 laravel에서 아주 처음입니다. 오늘 저는 데이터베이스를 위해 Laravel과 SQL Server로 프로젝트를 만듭니다. 해당 DB에 연결할 수 있으며 사용자 마이그레이션을 사용하여 기본 마이그레이션을 수행 할 수 있습니다. 하지만 테이블 사용자를 선택하고 json으로 반환하면 결과가 비어 있습니다. 그게 내 선택이야
{
//
$dataUser = User::all();
return response()->json($dataUser);
}
결과는 브라우저에서 []뿐입니다. Postman도 사용하지만 결과는 동일합니다. DB에 2 개의 기록이 있습니다.
그런 다음 다른 테이블로 작업하지 않으려면 기존 테이블을 사용하고 테이블 이름은 Purchases이고 테이블에는 약 100 개의 레코드가 있습니다. 그리고 그것은 테이블에 대한 나의 모델입니다
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Purchases extends Model
{
protected $table = 'Purchases';
protected $primaryKey = 'PurchaseID';
protected $guarded = ['PurchaseID'];
const CREATED_AT = 'CreatedTime';
const UPDATED_AT = 'LastModifiedTime';
}
?>
purchaseController에서 동일한 코드를 사용합니다.
namespace App\Http\Controllers;
use App\Purchases;
public function index()
{
//
$dataPurchase = Purchases::all();
return response()->json($dataPurchase);
}
하지만 이와 같은 오류를 반환하는 브라우저를로드하면
Illuminate\Database\QueryException
SQLSTATE[42S02]: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]Invalid object name 'purchases'. (SQL: select * from [purchases])
내 SSMS에서 내 테이블은 [dbo]. [purchases]이고 마이그레이션은 [dbo]. [users]입니다.
이 문제를 해결하도록 도와주세요. 감사합니다
편집 : 아파치에 PHP PDO 드라이버 만 등록하고 laravel 구성을 변경하기 때문에 연결에 문제가 있다고 생각합니다. 마이그레이션을 사용할 수 있지만 faker를 사용하면 팅커에 표시되는 데이터가 DB 사용자에게 저장되지 않습니다.
귀하의 코드는 내 프로젝트에서 완벽하게 작동했습니다. env 또는 databse.php에서 데이터베이스 연결을 확인하십시오.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다