• <menu id="w2i4a"></menu>
  • logo dbForge Data Compare for MySQL教程

    文檔首頁(yè)>>dbForge Data Compare for MySQL教程>>dbForge Data Compare for MySQL入門教程:服務(wù)器端和客戶端排序和篩選

    dbForge Data Compare for MySQL入門教程:服務(wù)器端和客戶端排序和篩選


    dbForge Data Compare for MySQL的數(shù)據(jù)生成器中,可以在客戶端或服務(wù)器端執(zhí)行數(shù)據(jù)的排序和過(guò)濾。

    如果表中的記錄不多,則在從表中檢索數(shù)據(jù)或執(zhí)行SELECT語(yǔ)句后,它們都會(huì)顯示在結(jié)果網(wǎng)格中。如果要對(duì)這些記錄進(jìn)行排序或使用過(guò)濾器,則會(huì)在客戶端執(zhí)行過(guò)濾和排序過(guò)程,并處理所有可用記錄。但是,如果表中有許多記錄,則在執(zhí)行SELECT語(yǔ)句或一次檢索數(shù)據(jù)后不會(huì)顯示它們,因?yàn)榇祟惒僮骺赡軐?dǎo)致客戶端計(jì)算機(jī)掛起或與操作過(guò)多數(shù)據(jù)相關(guān)的其他一些問(wèn)題。

    另一種情況是,當(dāng)網(wǎng)格中沒(méi)有顯示所有記錄時(shí),就是當(dāng)Paginal Mode打開(kāi)并且有更多記錄,然后是一頁(yè)上顯示的記錄數(shù)。在這些情況下,如果執(zhí)行客戶端排序或篩選,則僅處理客戶端計(jì)算機(jī)上可用的記錄。這意味著您將無(wú)法獲得過(guò)濾或排序的完整結(jié)果。這就是為什么數(shù)據(jù)生成器在網(wǎng)格中不能顯示所有記錄時(shí)執(zhí)行服務(wù)器端過(guò)濾或排序。

    執(zhí)行服務(wù)器端篩選或排序時(shí),應(yīng)用程序會(huì)向服務(wù)器發(fā)送一個(gè)查詢,該查詢是對(duì)起始查詢的修改。這種方式的缺點(diǎn)是服務(wù)器資源被占用,但好處是用戶將獲得完整的排序或過(guò)濾結(jié)果。但是一旦收到所有記錄,例如,在按CTRL + END或滾動(dòng)到結(jié)尾之后,將關(guān)閉服務(wù)器端篩選和排序,并使用客戶端篩選和排序。

    服務(wù)器端排序和過(guò)濾期間可能出現(xiàn)的問(wèn)題:

    在某些情況下,應(yīng)用程序無(wú)法修改起始查詢以將其發(fā)送到服務(wù)器并執(zhí)行服務(wù)器端排序或過(guò)濾。這些情況如下:

    • SELECT子句中有一個(gè)沒(méi)有別名的表達(dá)式。實(shí)際上這是對(duì)MS SQL Server的限制 - 無(wú)法在SELECT子句中修改包含沒(méi)有別名的語(yǔ)句的查詢。如果列沒(méi)有別名,則無(wú)法對(duì)其他列中的數(shù)據(jù)進(jìn)行排序或過(guò)濾,直到獲取所有數(shù)據(jù)或給出別名為止。
    • 有一個(gè)ORDER BY子句的查詢。在這種情況下,不能執(zhí)行服務(wù)器端篩選,這是因?yàn)镾QL Server限制。
    購(gòu)買dbForge Data Compare for MySQL正版授權(quán)的朋友可以點(diǎn)擊"咨詢?cè)诰€客服"哦~~~
    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();