亚洲Aⅴ无码Av红楼在线观看_国产午夜福利涩爱AⅤ_国产sm调教一区二区三区_精品人妻一区二区三区不卡毛片

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊(cè)有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

實(shí)施rnd_next()函數(shù)

發(fā)布時(shí)間:  2012/8/23 16:52:15

完成表的初始化操作后,MySQL服務(wù)器將調(diào)用處理程序的rnd_next()函數(shù),每?jī)蓚(gè)掃描行調(diào)用1次,直至滿足了服務(wù)器的搜索條件或到達(dá)文件結(jié)尾為止,在后一種情況下,處理程序?qū)⒎祷?span style="padding-right: 0px; padding-left: 0px; padding-bottom: 0px; margin: 0px; padding-top: 0px">HA_ERR_END_OF_FILE。

 

rnd_next()函數(shù)有一個(gè)名為*buf的單字節(jié)數(shù)組參數(shù)。對(duì)于*buf參數(shù),必須按內(nèi)部MySQL格式用表行的內(nèi)容填充它。

 

服務(wù)器采用了三種數(shù)據(jù)格式:固定長(zhǎng)度行,可變長(zhǎng)度行,以及具有BLOB指針的可變長(zhǎng)度行。對(duì)于每種格式,各列將按照它們由CREATE TABLE語句定義的順序顯示(表定義保存在.frm文件中,優(yōu)化程序和處理程序均能從相同的源,即TABLE結(jié)構(gòu),訪問表的元數(shù)據(jù))。 電腦知識(shí)www.boydavid.com

每種格式以每列1比特的"NULL bitmap"開始。對(duì)于含6個(gè)列的表,其bitmap1字節(jié),對(duì)于含916列的表,其bitmap2字節(jié),依此類推。要想指明特定的值是NULL,應(yīng)將該列NULL位設(shè)置為1 計(jì)算機(jī)愛好者www.boydavid.com

當(dāng)NULL bitmap逐個(gè)進(jìn)入列后,每列將具有MySQL手冊(cè)的“MySQL數(shù)據(jù)類型”一節(jié)中指定的大小。在服務(wù)器中,列的數(shù)據(jù)類型定義在sql/field.cc文件中。對(duì)于固定長(zhǎng)度行格式,列將簡(jiǎn)單地逐個(gè)放置。對(duì)于可變長(zhǎng)度行,VARCHAR列將被編碼為1字節(jié)長(zhǎng),后跟字符串。對(duì)于具有BLOB列的可變長(zhǎng)度行,每個(gè)blob由兩部分表示:首先是表示BLOB實(shí)際大小的整數(shù),然后是指向內(nèi)存中BLOB的指針。 計(jì)算機(jī)愛好者www.boydavid.com

在任何表處理程序中從rnd_next()開始,可找到行轉(zhuǎn)換(或“包裝”)的示例。例如,在ha_tina.cc中,find_current_row()內(nèi)的代碼給出了使用TABLE結(jié)構(gòu)(由表指向的)和字符串對(duì)象(命名緩沖)包裝字符數(shù)據(jù)(來自CSV文件)的方法。將行寫回磁盤需要反向轉(zhuǎn)換,從內(nèi)部格式解包。 計(jì)算機(jī)學(xué)習(xí)網(wǎng)站www.boydavid.com

下述示例來自CSV存儲(chǔ)引擎:

 

int ha_tina::rnd_next(byte *buf)  
 { 計(jì)算機(jī)學(xué)習(xí)網(wǎng)站www.boydavid.com 
   DBUG_ENTER("ha_tina::rnd_next");  
  電腦維護(hù)www.boydavid.com 
   statistic_increment(table->in_use->status_var.ha_read_rnd_next_count, &LOCK_status);  
   
   current_position= next_position;  
   if (!share->mapped_file)  
     DBUG_RETURN(HA_ERR_END_OF_FILE);  
   if (HA_ERR_END_OF_FILE == find_current_row(buf) )

本文出自:億恩科技【www.allwellnessguide.com】

服務(wù)器租用/服務(wù)器托管中國(guó)五強(qiáng)!虛擬主機(jī)域名注冊(cè)頂級(jí)提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營(yíng)性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營(yíng)性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營(yíng)性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號(hào)
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號(hào)總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號(hào)
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線