久久青草费线频观看,国产精品久久久久久亚洲AV,被多人玩弄的烂货苏妖精学生,国产九九在线观看播放

互聯(lián)網品牌整合服務·為夢想者創(chuàng)造夢想品牌

服務1000+企業(yè),專注企業(yè)網站設計 / 網站制作 / 網站優(yōu)化推廣 網站托管服務

了解詳情

致力于服務頭部企業(yè).打造標桿項目

讓每一個作品融入我們的洞察力,創(chuàng)造并呈現(xiàn)精彩 展現(xiàn)您的非凡與不同

了解詳情

網站優(yōu)化 網站搜索排名

濰坊及全國各地區(qū)提供搜索引擎優(yōu)化服務

了解詳情

access數(shù)據(jù)庫隨機不重復讀取記錄

發(fā)布時間:2016/4/12 16:32:05 關注:1561


關于使用ASP隨機查詢數(shù)據(jù)庫中的數(shù)據(jù),有兩種兩見的數(shù)據(jù)庫,即Sql Server和 Access。 
SQL server數(shù)據(jù)庫有個NewID函數(shù),可以很方便的用SQL語句得到數(shù)據(jù)表中的隨機數(shù)據(jù)。即可以使用以下SQL語句來實現(xiàn): 
sql="Select top 10 * from TableName order by NewId()" 
Access數(shù)據(jù)庫同樣提供一個Rnd函數(shù),可以通過以下SQL語句來實現(xiàn)隨機: 
sql="select top 10 * from TableName order by Rnd(id)" 
Rnd(id) 其中的id只是為了提供一個種子,可以利用其他任何數(shù)值來完成。在這里Id為主鍵的值,因為通常而言,主鍵一般為自動編號字段,即數(shù)值型。 
可通過使用后發(fā)現(xiàn),程序在第一次執(zhí)行時是可以實現(xiàn)隨機取得記錄,但反復刷新后發(fā)現(xiàn),每次返回的數(shù)據(jù)都相同。分析后發(fā)現(xiàn),由于Access數(shù)據(jù)庫記錄集緩存的原因,從代碼里得到Access數(shù)據(jù)庫隨機記錄是得不到,需要用隨機SQL語句的辦法來消除緩存。 
有人說在程序中加上Randomize初始化隨機種子,這只說對了一半,在程序中簡單的加上Randomize,是沒作用的,道理很簡單,Randomize不可能影響SQL語句中的Rnd,這個Rnd只不過是個字符串,SQL語句是通過數(shù)據(jù)庫引擎去執(zhí)行的,正因為如此,無法初始化種子,致使每次應用產生的隨機序列是一樣的。 
由此可見,解決問題的關鍵就是如何初始化隨機種子。Rnd函數(shù)語法是Rnd(number),它有一個特性,就是如果使用了負參數(shù)的 number,那么就會產生一個固定的隨機序列。利用這個特性,我們的問題就迎刃而解了,這就是每次調用Rnd函數(shù)時,使用一個負的不同的number,從而達到產生不同隨機序列的目的。經過測試,問題解決。使用如下代碼即可使用正確的隨機。 
Randomize 
sql="select top 10 * from TableName order by Rnd("&Rnd()&"-id)" 

  • 上一條:關于網站不能訪問或許是DNS被劫持了
  • 下一條:在濰坊做網站應該注意哪些事項
  • 濰坊網站建設,濰坊網站優(yōu)化,濰坊網站排名,濰坊網站改版,濰坊網站營銷策劃,濰坊網站制作,濰坊網站托管,濰坊網站百度排名,濰坊網站培訓,濰坊seo培訓,濰坊網絡公司

    地址:山東省濰坊奎文區(qū)新華路樂川街華誼大廈三樓

    網址:http://www.aalagrf.cn/ 垂詢電話:

    網站備案:魯ICP備14027302號-5

    copyright© 濰坊華邦網絡有限公司2011-2025