亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? recordset.asp

?? 網(wǎng)上商城的設(shè)計(jì)與實(shí)現(xiàn)
?? ASP
?? 第 1 頁 / 共 3 頁
字號:
<SCRIPT RUNAT=SERVER LANGUAGE="JavaScript">
// ************************************************************************ 
// MSL : Microsoft Scripting Libary 
// Visual InterDev 6.0 Recordset Object for ASP
//
// Copyright 1998 Microsoft Corporation. All Rights Reserved.
// ************************************************************************ 

function CreateRecordset(strName,funcInit,objParent)
{	
	if (typeof(strName) != 'string' || strName == '')
	{
		@if (@trace_warnings)
			thisPage._traceWarning('Err 428: Invalid argument [strName].  Must provide a valid string.','recordset.asp','CreateRecordset(strName)');
		@end
		return null;
	}

	var objRecordset = new _Recordset(strName);
	eval(strName + ' = objRecordset');
	// always fire init for recordset
	objRecordset._funcInit = funcInit;
	thisPage.advise(PAGE_ONINIT,strName + '._restoreState()',10);
	return objRecordset;
}

function _Recordset(strName)
{
	if (typeof(_bRSPrototypeCalled) == 'undefined')
		_RS__Prototype();

	// public members
	this.id = strName;
	this.name = strName;
	this.fields = null;
	this.absolutePosition = 0;
	this.BOF = true;
	this.EOF = true;
	this.maintainState = true;

	// private members
	this._rsADO = null;
	this._count = -1;
	this._allowUpdate = false;
	this._objDBConn = null;
	this._bookmark = 0;
	this._params = null;
	this._bCancelUpdate = false;
	this._bFiringOnBeforeUpdate = false;
	this._bAddNew = false;
	this._bAddNewImmediate = false;
	this._bExecuted = false;
	this._strSQL = '';
	
	// advise for default eventhandlers
	this._objEventManager = CreateEventManager();
	this._objEventManager.adviseDefaultHandler(this.name,RS_ONBEFOREOPEN);
	// set default handlers AFTER all other controls are initialized
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONROWENTER)',-10);
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONDATASETCHANGED)',-10);
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONDATASETCOMPLETE)',-10);
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONROWEXIT)',-10);
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONBEFOREUPDATE)',-10);
	thisPage.advise(PAGE_ONINIT,this.name + '.adviseDefaultHandler("' + this.name + '",RS_ONAFTERUPDATE)',-10);
}

function _RS__Prototype()
{
	//public members
	_Recordset.prototype.getCount = _RS_getCount;
	_Recordset.prototype.moveNext = _RS_moveNext;
	_Recordset.prototype.movePrevious = _RS_movePrevious;
	_Recordset.prototype.moveFirst = _RS_moveFirst;
	_Recordset.prototype.moveLast = _RS_moveLast;
	_Recordset.prototype.moveAbsolute = _RS_moveAbsolute;
	_Recordset.prototype.move = _RS_move;
	_Recordset.prototype.updateRecord = _RS_updateRecord;
	_Recordset.prototype.cancelUpdate = _RS_cancelUpdate;
	_Recordset.prototype.addRecord = _RS_addRecord;
	_Recordset.prototype.addImmediate = _RS_addImmediate;
	_Recordset.prototype.deleteRecord = _RS_deleteRecord;
	_Recordset.prototype.advise = _RS_advise;
	_Recordset.prototype.unadvise = _RS_unadvise;
	_Recordset.prototype.adviseDefaultHandler = _RS_adviseDefaultHandler;

	_Recordset.prototype.getRecordSource = _RS_getRecordSource;
	_Recordset.prototype.setRecordSource = _RS_setRecordSource;
	_Recordset.prototype.open = _RS_open;
	_Recordset.prototype.isOpen = _RS_isOpen;
	_Recordset.prototype.close = _RS_close;
	_Recordset.prototype.getConnectString = _RS_getConnectString;
	_Recordset.prototype.getSQLText = _RS_getSQLText;
	_Recordset.prototype.setSQLText = _RS_setSQLText;
	_Recordset.prototype.requery = _RS_requery;
	_Recordset.prototype.setBookmark = _RS_setBookmark;
	_Recordset.prototype.getBookmark = _RS_getBookmark;
	_Recordset.prototype.setParameter = _RS_setParameter;
	_Recordset.prototype.getParameter = _RS_getParameter;
	_Recordset.prototype.isDHTMLAware = _RS_isDHTMLAware;
	_Recordset.prototype.getDHTMLDataSourceID = _RS_getDHTMLDataSourceID;
	
	//events
	RS_ONBEFOREOPEN = 'onbeforeopen';
	RS_ONROWENTER = 'onrowenter';
	RS_ONROWEXIT = 'onrowexit';
	RS_ONDATASETCHANGED = 'ondatasetchanged';
	RS_ONDATASETCOMPLETE = 'ondatasetcomplete';
	RS_ONBEFOREUPDATE = 'onbeforeupdate';
	RS_ONAFTERUPDATE = 'onafterupdate';

	//private members
	_Recordset.prototype._syncBOFandEOF = _RS__syncBOFandEOF;
	_Recordset.prototype._fireEvent = _EM__fireEvent;
	_Recordset.prototype._preserveState = _RS__preserveState;
	_Recordset.prototype._restoreState = _RS__restoreState;
	_Recordset.prototype._hasState = _RS__hasState;
	_Recordset.prototype._isEmpty = _RS__isEmpty;
	_Recordset.prototype._resetMembers = _RS__resetMembers;
	_bRSPrototypeCalled = 1;

@if (@debug)
	_Recordset.prototype._reportError = _RS__reportError;
@end

	//scope implementation to _RS__Prototype function

	function _RS_getCount()
	{
		if (this._count < 0)
		{
			if (this.isOpen())
			{
				if (!this.BOF || !this.EOF)
				{
					this._count = this._rsADO.RecordCount;
					if (this._count <= 0)
					{	
						var curPos = this._rsADO.AbsolutePosition;
						if (curPos > 0)
						{
							this._count = 0;
							this._rsADO.MoveFirst();
							while (!this._rsADO.EOF)
							{	
								this._count++;	
								this._rsADO.MoveNext();	
							}
							this._rsADO.AbsolutePosition = curPos;
						}
					}
				}
				else
					this._count = 0;

				return this._count;
			}
			return 0;
		}
		return this._count;
	}
	
	function _RS_moveNext(nDirection)
	{
		if (typeof(nDirection) == 'undefined')
				nDirection = 1;
		@if (@trace_warnings)
			var funcName = ((nDirection < 0) ? '.movePrevious()' : '.moveNext()');
		@end
				
		if (!this._isEmpty())
		{
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end
			this._objEventManager.fireEvent(RS_ONROWEXIT);	
			this._rsADO.Move(nDirection);
			this._syncBOFandEOF();
			this.fields._reset(this._rsADO);
			if (this.EOF || this.BOF)
			{
				return false;
			}
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true;
		}
		@if (@trace_warnings)
			thisPage._traceWarning('Err 414: Cannot move a closed or empty recordset.','recordset.asp',this.name + funcName);
		@end
		return false;
	}

	function _RS_movePrevious()
	{
		return this.moveNext(-1);
	}

	function _RS_moveLast(bReverse)
	{
		if (!this._isEmpty())
		{
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end
			this._objEventManager.fireEvent(RS_ONROWEXIT);
			
			if ((bReverse + '') == 'true')
				this._rsADO.MoveFirst();
			else			
				this._rsADO.MoveLast();
				
			this._syncBOFandEOF();
			this.fields._reset(this._rsADO);
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true;
		}
		@if (@trace_warnings)
			var funcName = (((bReverse + '') == 'true') ? '.moveFirst()' : '.moveLast()');
			thisPage._traceWarning('Err 414: Cannot move a closed or empty recordset.','recordset.asp',this.name + funcName);
		@end
		return false;
	}

	function _RS_moveFirst()	
	{
		return this.moveLast(true);
	}

	function _RS_moveAbsolute(nIndex)
	{
		if (!this._isEmpty() && typeof(nIndex) == 'number')
		{
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end
			this._objEventManager.fireEvent(RS_ONROWEXIT);
			this._rsADO.AbsolutePosition = nIndex;
			this._syncBOFandEOF();
			this.fields._reset(this._rsADO);
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true;
		}
		
		@if (@trace_warnings)
			if (typeof(nIndex) != 'number')
				thisPage._traceWarning('Err 421: Invalid argument [nIndex = ' + nIndex + ']. Must be a number.','recordset.asp',this.name + '.moveAbsolute(nIndex)');
			else
				thisPage._traceWarning('Err 414: Cannot move a closed or empty recordset.','recordset.asp',this.name + '.moveAbsolute(nIndex)');
		@end
		return false;
	}	

	function _RS_move(nIndex)
	{
		// move relative to current record
		if (!this._isEmpty() && typeof(nIndex) == 'number')
		{
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end
			this._objEventManager.fireEvent(RS_ONROWEXIT);
			this._rsADO.Move(nIndex);
			this._syncBOFandEOF();
			this.fields._reset(this._rsADO);
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true;
		}
		
		@if (@trace_warnings)
			if (typeof(nIndex) != 'number')
				thisPage._traceWarning('Err 421: Invalid argument [nIndex = ' + nIndex + ']. Must be a number.','recordset.asp',this.name + '.move(nIndex)');
			else
				thisPage._traceWarning('Err 414: Cannot move a closed or empty recordset.','recordset.asp',this.name + '.move(nIndex)');
		@end
		return false;
	}	

	function _RS_updateRecord()
	{	
		//bFiringOnBeforeUpdate: If the user is calling this function from
		//the OnBeforeUpdate, the call should be rejected.
		if (this._allowUpdate && (!this._isEmpty() || this._bAddNewImmediate) && !this._bFiringOnBeforeUpdate) 
		{ 	
			if (this._bAddNewImmediate)
			{
				if (this._count >= 0)
					++this._count;
				this._rsADO.AddNew();
				this.fields._isValid = true;
			}
			
			this._bFiringOnBeforeUpdate = true;				
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONBEFOREUPDATE);
			@end
			this._objEventManager.fireEvent(RS_ONBEFOREUPDATE);
			this._bFiringOnBeforeUpdate = false;	
			if (!this._bCancelUpdate)
			{
				this._rsADO.Update();
				if (this._rsADO.LockType == 4)
					this._rsADO.UpdateBatch();
		
				if (this._bAddNewImmediate)
					this._syncBOFandEOF();
					
				this._bAddNewImmediate = false;
				@if (@trace_events)
					thisPage._traceEvent(this.name,RS_ONAFTERUPDATE);
				@end
				this._objEventManager.fireEvent(RS_ONAFTERUPDATE);
				return true;
			}
			else
				this._bCancelUpdate = false;
		} 
		@if (@trace_warnings)
			if (this._isEmpty())
				thisPage._traceWarning('Err 416: Cannot update a closed or empty recordset.','recordset.asp',this.name + '.updateRecord()');
			else if (this._rsADO.LockType == 1)
				thisPage._traceWarning('Err 417: Cannot update a read-only recordset.','recordset.asp',this.name + '.updateRecord()');
			else if (this._bFiringOnBeforeUpdate == true)
				thisPage._traceWarning('Err 407: Calling updateRecord is not allowed during the onbeforeupdate event.','recordset.asp',this.name + '.updateRecord()');
		@end
		return false; 
	}

	function _RS_cancelUpdate()
	{	
		if (this._allowUpdate && this.isOpen()) 
		{	
			//adEditAdd = 2
			if (this._rsADO.EditMode == 2)
			{
				if (this._bAddNewImmediate)
				{
					if (this._count >= 0)
						--this._count;
				}
				if (!this._isEmpty())
				{
					this._rsADO.CancelUpdate();	
					this._syncBOFandEOF();
					this.fields._reset(this._rsADO);	
				}
				else
				//ADO doesn't support CancelUpdate with empty recordset
					this.fields._isValid = false;
			}
			
			//adEditInProgress = 1
			if (this._rsADO.EditMode == 1)	
				this._rsADO.CancelUpdate(); 
				
			this._bAddNewImmediate = false;
			this._bCancelUpdate = true;
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true; 
		} 
		@if (@trace_warnings)
			if (this._isEmpty())
				thisPage._traceWarning('Err 410: Cannot cancel update of a closed or empty recordset.','recordset.asp',this.name + '.cancelUpdate()');
			else if (this._rsADO.LockType == 1)
				thisPage._traceWarning('Err 411: Cannot cancel update of a read-only recordset.','recordset.asp',this.name + '.cancelUpdate()');
		@end
		return false; 
	}

	function _RS_addRecord()
	{	
		//bFiringOnBeforeUpdate: If the user is calling this function from
		//the OnBeforeUpdate, the call should be rejected.
		if (this._allowUpdate && this.isOpen() && !this._bFiringOnBeforeUpdate) 
		{	
			this._bAddNewImmediate = false;
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end
			this._objEventManager.fireEvent(RS_ONROWEXIT);
			// set flag to indicate new record for subsequent update
			this._bAddNew = true;
			this.fields._reset(this._rsADO);
			this.fields._newRecord = true;
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWENTER);
			@end
			this._objEventManager.fireEvent(RS_ONROWENTER);
			return true; 
		}
		@if (@trace_warnings)
			if (!this.isOpen())
				thisPage._traceWarning('Err 408: Cannot add a new record to a closed recordset.','recordset.asp',this.name + '.addRecord()');
			else if (this._rsADO.LockType == 1)
				thisPage._traceWarning('Err 409: Cannot add a new record to a read-only recordset.','recordset.asp',this.name + '.addRecord()');
			else if (this._bFiringOnBeforeUpdate == true)
				thisPage._traceWarning('Err 406: Calling addRecord is not allowed during the onbeforeupdate event.','recordset.asp',this.name + '.addRecord()');
		@end
		return false; 
	}
	
	function _RS_addImmediate(fieldList, fieldValues)
	{	
		if (this._allowUpdate && this.isOpen() && !this._bFiringOnBeforeUpdate) 
		{	
			this._bAddNewImmediate = false;
			@if (@trace_events)
				thisPage._traceEvent(this.name,RS_ONROWEXIT);
			@end

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧洲精品在线观看| 亚洲另类在线视频| 国产成人日日夜夜| 欧美国产欧美综合| 国产mv日韩mv欧美| 亚洲欧洲韩国日本视频| 91极品视觉盛宴| 日韩国产成人精品| 久久人人97超碰com| heyzo一本久久综合| 亚洲大片免费看| 欧美大片日本大片免费观看| 国产成人精品一区二区三区四区 | 亚洲天堂福利av| 91行情网站电视在线观看高清版| 亚洲国产一区视频| 日韩一区二区视频在线观看| 国产麻豆视频精品| 亚洲青青青在线视频| 欧美三区在线观看| 九色综合狠狠综合久久| 国产精品色在线观看| 欧美日韩一区二区电影| 精品一区二区三区视频在线观看| 中文字幕一区二区三区在线播放 | 欧美精品自拍偷拍动漫精品| 久久福利视频一区二区| 中文字幕第一区| 欧美日韩激情一区| 国产91精品一区二区麻豆网站| 夜夜操天天操亚洲| 26uuuu精品一区二区| 91丝袜美女网| 紧缚捆绑精品一区二区| 中文字幕一区二区三区在线不卡 | 亚洲欧洲制服丝袜| 日韩精品在线看片z| 97超碰欧美中文字幕| 另类的小说在线视频另类成人小视频在线 | 香蕉久久夜色精品国产使用方法| 欧美成人aa大片| 色婷婷久久综合| 国产精品一线二线三线精华| 石原莉奈在线亚洲三区| 亚洲欧美成aⅴ人在线观看| 精品国产露脸精彩对白| 欧美日韩色综合| 99久久精品国产观看| 国产精品77777| 美女视频黄久久| 婷婷中文字幕综合| 亚洲欧美另类在线| 国产精品视频麻豆| 国产亚洲欧美日韩日本| 日韩免费观看高清完整版| 欧美视频一区二| 97精品久久久久中文字幕| 国产剧情一区二区三区| 麻豆91精品视频| 日韩主播视频在线| 亚洲综合成人网| 国产日韩欧美精品在线| 欧美一区二区三区在线电影 | 99r国产精品| 国产69精品久久777的优势| 久久66热偷产精品| 久久精品国产久精国产| 日韩av一区二区三区| 亚洲va欧美va人人爽午夜| 一区二区在线免费| 亚洲黄色录像片| 亚洲啪啪综合av一区二区三区| 18成人在线观看| 中文字幕一区二区三区在线观看| 中文字幕一区二区三区精华液| 亚洲国产精华液网站w| 日本一区二区视频在线| 国产亚洲精品精华液| 久久久蜜桃精品| 国产亚洲成aⅴ人片在线观看| 国产日韩欧美电影| 国产精品高清亚洲| 国产精品国产自产拍高清av王其| 久久蜜桃香蕉精品一区二区三区| 日韩久久精品一区| 久久综合久久综合亚洲| 久久久久久9999| 国产精品色哟哟| 亚洲欧洲成人精品av97| 伊人开心综合网| 天天免费综合色| 蜜桃一区二区三区四区| 精品亚洲成a人在线观看 | 成人福利视频网站| 99久久婷婷国产综合精品电影| 99re6这里只有精品视频在线观看 99re8在线精品视频免费播放 | 在线精品视频免费观看| 欧美日韩电影一区| 精品少妇一区二区三区日产乱码| 国产天堂亚洲国产碰碰| 亚洲视频 欧洲视频| 亚洲一区二区三区免费视频| 亚洲va天堂va国产va久| 精品一区二区三区香蕉蜜桃 | 久久久久九九视频| 综合在线观看色| 亚洲与欧洲av电影| 日韩中文字幕一区二区三区| 九一九一国产精品| 91在线免费看| 欧美一级欧美一级在线播放| 精品国产免费视频| 中文字幕免费不卡在线| 亚洲香肠在线观看| 久久99精品久久久久婷婷| 99re这里只有精品首页| 日韩免费看的电影| 又紧又大又爽精品一区二区| 久久综合综合久久综合| jlzzjlzz亚洲女人18| 欧美区视频在线观看| 欧美国产精品一区| 亚洲一区二区三区不卡国产欧美| 日韩av午夜在线观看| 成人av一区二区三区| 91精品国产91久久综合桃花| 国产欧美1区2区3区| 亚洲国产成人av网| 国产福利91精品一区二区三区| 91成人网在线| 国产欧美一区二区三区在线看蜜臀| 亚洲在线视频网站| 国产激情91久久精品导航| 欧美三级一区二区| 国产精品青草久久| 美女尤物国产一区| 欧美日韩中字一区| 亚洲欧美日韩中文字幕一区二区三区 | 欧美亚洲国产一区二区三区| 欧美韩国日本不卡| 国模少妇一区二区三区| 欧美日韩一区视频| 亚洲激情五月婷婷| 91毛片在线观看| 中文字幕乱码一区二区免费| 精品影视av免费| 欧美高清www午色夜在线视频| 中文字幕视频一区| 国产毛片精品视频| 日韩视频一区在线观看| 亚洲高清一区二区三区| 色综合久久天天综合网| 久久蜜臀精品av| 精品无码三级在线观看视频| 91麻豆精品国产91久久久更新时间| 一区二区久久久久| 91首页免费视频| 亚洲欧洲99久久| 成人激情文学综合网| 日本一区二区动态图| 成人毛片视频在线观看| 欧美激情一区不卡| av不卡免费在线观看| 亚洲人成精品久久久久| 99精品国产一区二区三区不卡| 国产欧美1区2区3区| 成人天堂资源www在线| 欧美激情一区二区三区| 成人国产亚洲欧美成人综合网| 久久精品一区四区| 国产露脸91国语对白| 久久综合色8888| 粉嫩久久99精品久久久久久夜| 久久精品亚洲乱码伦伦中文| 国产一区在线视频| 久久久久久久久免费| 国产成人综合在线观看| 国产欧美精品一区二区三区四区 | www久久精品| 国产精品自拍毛片| 亚洲欧洲成人精品av97| 欧美亚洲动漫制服丝袜| 五月天精品一区二区三区| 日韩免费观看2025年上映的电影| 久久99国产精品久久99 | 亚洲嫩草精品久久| 91豆麻精品91久久久久久| 亚洲成人动漫在线观看| 91精品在线观看入口| 另类小说欧美激情| 国产三级精品三级| 91免费版在线| 日韩中文欧美在线| 亚洲精品在线网站| 成人在线综合网| 亚洲一区二区三区在线播放| 91精品国产色综合久久不卡蜜臀| 精品一区二区三区在线视频| 亚洲天堂网中文字| 日韩精品一区二区三区四区视频|