Tôi có một truy vấn tôi chạy trong Doctrine; nó bây giờ là thất bại, nhưng theo một cách kỳ lạ. Truy vấn này đã hoạt động được một năm, tôi chỉ bị rối một chút với composer.json
một chút bằng cách thêm một vài thư viện mới và thay đổi một số phiên bản. Tôi cũng đã cập nhật hộp Linux của mình (có thể MySQL hoặc MariaDB đã được cập nhật, không chắc chắn). Bất cứ điều gì đã thay đổi (nghi ngờ đó là mã mô hình Doctrine của gói của tôi, trừ khi nó không phải là kosher ở nơi đầu tiên và cập nhật cốt lõi bây giờ cho thấy nó là bị hỏng), truy vấn hiện đang trả về kết quả, với một mảng của chính xác số lượng các khóa, tuy nhiên các giá trị được nhận NULLed bằng cách nào đó. Mảng trông giống hệt như thế này, một bản sao và dán trực tiếp từ var_dump, ví dụ:Dữ liệu kết quả của Symfony2 và Doctrine 2 trả về không chính xác một mảng số trống
var_dump($query->getSql());
var_dump($results);
exit;
select GoalLabel from opt_goals where scale = 'mathematics'
array(17) { [0]=> NULL [1]=> NULL [2]=> NULL [3]=> NULL [4]=> NULL [5]=> NULL [6]=> NULL [7]=> NULL [8]=> NULL [9]=> NULL [10]=> NULL [11]=> NULL [12]=> NULL [13]=> NULL [14]=> NULL [15]=> NULL [16]=> NULL }
Nhưng khi tôi chạy truy vấn này cùng trong dòng lệnh MySQL, tôi nhận được kết quả thực tế, đó là cùng một lượng phím, nhưng giá trị là đó.
Dưới đây là phần không mặc định của composer.json
của tôi yêu cầu phần:
"components/jquery": "~1.11,<2.0",
"twbs/bootstrap": "3.3.*",
"braincrafted/bootstrap-bundle": "~2.1",
"knplabs/knp-menu": "~1.1",
"knplabs/knp-menu-bundle": "~1.1",
"knplabs/knp-paginator-bundle": "dev-master",
"symfony/icu": "1.1.*",
"mnot/hinclude": "dev-master",
"rhumsaa/array_column": "~1.1",
"webfactory/exceptions-bundle": "@stable",
"friendsofsymfony/jsrouting-bundle": "~1.5",
"hearsay/require-js-bundle": "~1.0",
"browserstate/history.js": "dev-master"
chú ý tới bất kỳ điều chỉnh phiên bản, bởi vì tôi đã làm lộn xộn với điều này. Tuy nhiên tôi không biết tại thời điểm đó Doctrine đã đi sâu vào cuối.
Chỉnh sửa: theo nhận xét mới nhất và now seeing this, đây có phải là những gì đang diễn ra không? Trên thực tế, this URL phù hợp hơn vì tôi không sử dụng doctrine/dbal
, tôi đang sử dụng doctrine/orm
.
thay vì 'var_dump() 'thử' đổ()' nếu bạn sử dụng 'symfony + 2.6' và cho phép nhìn thấy những gì bạn nhận được. –
Bạn đã kiểm tra 'EXPLAIN' trong hồ sơ web của mình chưa? – sjagr
không nhưng thats một ý tưởng tuyệt vời, tôi không có một hồ sơ, đây là một phản ứng json. làm thế nào tôi sẽ làm điều đó? tôi tìm thấy http://stackoverflow.com/questions/21555697/how-to-display-the-symfony-profiler-for-api-request-made-in-the-browser này và cố gắng giải pháp cho thêm dịch vụ tại – blamb