游æ ï¼cursorï¼æ¯ç³»ç»ä¸ºç¨æ·å¼è®¾çä¸ä¸ªæ°æ®ç¼å²åºï¼åæ¾SQLè¯å¥çæ§è¡ç»æãæ¯ä¸ªæ¸¸æ åºé½æä¸ä¸ªååï¼ç¨æ·å¯ä»¥ç¨SQLè¯å¥éä¸ä»æ¸¸æ ä¸è·åè®°å½ï¼å¹¶èµç»ä¸»åéï¼äº¤ç±ä¸»è¯è¨è¿ä¸æ¥å¤çã游æ æä¾äºä¸ç§å¯¹ä»è¡¨ä¸æ£ç´¢åºçæ°æ®è¿è¡æä½ççµæ´»æ段ã
使ç¨æ¸¸æ çåºæ¬æ¥éª¤ï¼
1ã声æ游æ ãæ游æ ä¸T-SQLè¯å¥çç»æéè系起æ¥ã
2ãæå¼æ¸¸æ ã
3ã使ç¨æ¸¸æ æä½æ°æ®ã
4ãå
³é游æ ã
åè½ï¼
1ã游æ æä¾äºä¸ç§å¯¹ä»è¡¨ä¸æ£ç´¢åºçæ°æ®è¿è¡æä½ççµæ´»æ段ï¼å°±æ¬è´¨èè¨ï¼æ¸¸æ å®é
ä¸æ¯ä¸ç§è½ä»å
æ¬å¤æ¡æ°æ®è®°å½çç»æéä¸æ¯æ¬¡æåä¸æ¡è®°å½çæºå¶ã
2ã游æ è½å¤å®ç°æä¸ä¼ ç»ç¨åºè¯»åå¹³é¢æ件类似çæ¹å¼å¤çæ¥èªåºç¡è¡¨çç»æéï¼ä»èæ表ä¸æ°æ®ä»¥å¹³é¢æ件çå½¢å¼åç°ç»ç¨åºã
3ã游æ æä½ä¸ºé¢åéåç
æ°æ®åºç®¡çç³»ç»åé¢åè¡çç¨åºè®¾è®¡ä¸¤è
è系起æ¥ï¼ä½¿ä¸¤ä¸ªæ°æ®å¤çæ¹å¼è½å¤è¿è¡æ²éã
ç§ç±»ï¼
1ãTransact_SQL游æ
Transact_SQL游æ æ¯ç±DECLARECURSORè¯æ³å®ä¹ã主è¦ç¨å¨Transact_SQLèæ¬ã
åå¨è¿ç¨å触åå¨ä¸ãTransact_SQL游æ 主è¦ç¨å¨æå¡å¨ä¸ï¼ç±ä»å®¢æ·ç«¯åéç»æå¡å¨çTransact_SQLè¯å¥ææ¯æ¹å¤çãåå¨è¿ç¨ã触åå¨ä¸çTransact_SQLè¿è¡ç®¡çãTransact_SQL游æ ä¸æ¯ææåæ°æ®åæå¤è¡æ°æ®ã
2ãAPI游æ
API游æ æ¯æå¨OLEDBï¼ODBC以åDB_libraryä¸ä½¿ç¨æ¸¸æ å½æ°ï¼ä¸»è¦ç¨å¨æå¡å¨ä¸ãæ¯ä¸æ¬¡å®¢æ·ç«¯
åºç¨ç¨åºè°ç¨API游æ å½æ°ï¼MSSQLSEVERçOLEDBæä¾è
ãODBC
驱å¨å¨æDB_libraryç
å¨æé¾æ¥åºï¼DLLï¼é½ä¼å°è¿äºå®¢æ·è¯·æ±ä¼ éç»æå¡å¨ä»¥å¯¹API游æ è¿è¡å¤çã
3ã客æ·æ¸¸æ
客æ·æ¸¸æ 主è¦æ¯å½å¨å®¢æ·æºä¸ç¼åç»æéæ¶æ使ç¨ãå¨å®¢æ·æ¸¸æ ä¸ï¼æä¸ä¸ªç¼ºççç»æé被ç¨æ¥å¨å®¢æ·æºä¸ç¼åæ´ä¸ªç»æéã客æ·æ¸¸æ ä»
æ¯æéæ游æ èéå¨æ游æ ãç±äºæå¡å¨æ¸¸æ 并ä¸æ¯æææçTransact-SQLè¯å¥ææ¹å¤çï¼æ以客æ·æ¸¸æ 常常ä»
被ç¨ä½æå¡å¨æ¸¸æ çè¾
å©ãå 为å¨ä¸è¬æ
åµä¸ï¼æå¡å¨æ¸¸æ è½æ¯æç»å¤§å¤æ°ç游æ æä½ãç±äºAPI游æ åTransact-SQL游æ 使ç¨å¨æå¡å¨ç«¯ï¼æ以被称为æå¡å¨æ¸¸æ ï¼ä¹è¢«ç§°ä¸ºåå°æ¸¸æ ï¼è客æ·ç«¯æ¸¸æ 被称为åå°æ¸¸æ ã