1. 程式人生 > >SQL與原生SQL的區別

SQL與原生SQL的區別

                                        SQL

一般指根據指定的程式規則,自動生成的sql,比如最經典的,linq to sql 原理:對使用者撰寫的SQL進行一層包裝,新增更多分析功能。 優勢:在靈活分析的展現介面,還可以做排序,過濾,彙總等操作; 劣勢:對SQL有書寫要求,需要在使用者sql中,顯式申明別名;對SQL做多一層封裝,對於某些資料庫來說,可能效率會低一些

                                          原生SQL
資料庫能直接執行的sql語句,比如能在oracle,mssql,mysql,db2等資料庫中直接執行

原理:不對使用者的SQL做任何封裝,直接提交到資料庫。 優勢:對SQL語法沒有任何限制;速度更快; 劣勢:不計算總行數;如果查詢結果較大,使用者可能不知道結果集大小;在靈活分析的展現介面,不支援排序、過濾、聚合等操作;;