我正在使用MySQL和Postgresql從SVN Trunk測試DBLinq-0.18和DBLinq。我只使用一個非常簡單的查詢,但在兩個數據庫DBLinq不生成一個Where子句。我通過打開Postgresql上的語句記錄來確認這一點,以確認DBLinq發送的是什麼請求。DBLinq沒有生成where子句
我的LINQ查詢:
MyDB db = new MyDB(new NpgsqlConnection("Database=database;Host=localhost;User Id=postgres;Password=password"));
var customers = from customer in db.Customers
where customer.CustomerUserName == "test"
select customer;
查詢工作正常,但通過的DBLinq生成的SQL的形式爲:
select customerusername, customerpassword .... from public.customers
沒有Where子句這意味着的DBLinq必須拉在運行Linq查詢之前將整個表全部刪除。
有沒有人有DBLinq的經驗,並知道我可能做錯了什麼?
很可能,問題在於如何監視提交的SQL,而不是實際生成的SQL。 – 2009-04-19 14:05:32
我對Postgresql非常熟悉,所以我使用該db來檢查語句。我打開了它的調試日誌記錄,我100%確定DBLinq發送的查詢是一個沒有where子句的select語句。 – sipwiz 2009-04-19 14:37:39