⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 复件 database.asp

📁 本系统是一套完整游戏金币交易平台,可以建立一个网站实现游戏金币的在线交易
💻 ASP
📖 第 1 页 / 共 2 页
字号:
		return 1;
	}

}

//查询多条记录,结果包含所有字段
//参数QueryCond:查询条件Entity结点, 该结点只有一个子结点where,例如user/where[@criteria='userid>10 and username like='%d%'']
function queryEntityAll(QueryCond) {
	/*
	var strSQL = "select * from " + QueryCond.name + " ";
	var whereNode = QueryCond.findNodeByXPath("where");
	if(whereNode!=null && whereNode.value!="") {
		strSQL += "where " + whereNode.value;
	}
	*/
	var strSQL = convertQueryCondToSQL(QueryCond);
	return this.runQuerySql(strSQL);
}


//翻页查询,结果包含所有字段 
//参数QueryCond:查询条件Entity结点, 该结点只有一个子结点where,例如user/where[@criteria='userid>10 and username like='%d%'']
//参数PageCond:分页信息Entity结点, 该结点结构是:<PageCond><PageSize/><AbsolutePage/><RecordCount/><PageCount/><PrePage/><NextPage/></PageCond>,
//PageSize默认为10,AbsolutePage默认为1
function queryEntityAllWithPage(QueryCond, PageCond) {
	var strSQL = convertQueryCondToSQL(QueryCond);
	return this.runQuerySqlWithPage(strSQL, PageCond);
}

//查询多条记录,并返回为表单的隐藏域
//参数QueryCond:查询条件Entity结点, 该结点只有一个子结点where,例如user/where[@criteria='userid>10 and username like='%d%'']
function queryEntityAllReturnHiddenData(QueryCond) {
	var strSQL = convertQueryCondToSQL(QueryCond);
	return this.runQuerySqlReturnHiddenData(strSQL, QueryCond.name);
}



function runInsertSql(sql) {
	this.dbconn.Execute(sql);
}

function runUpdateSql(sql) {
	this.dbconn.Execute(sql);
}

function runDeleteSql(sql) {
	this.dbconn.Execute(sql);
}

function runQuerySql(sql) {
	var recordSet = Server.CreateObject("ADODB.RecordSet");
	recordSet.Open(sql, this.dbconn, 1, 1);
	return recordSet;
}

function runQuerySqlWithPage(sql, PageCond) {
	//Response.Write(sql);

	var PageSize = 10;   //每页记录数
	var AbsolutePage = 1;  //当前页号
	var RecordCount = 0;  //记录总数
	var PageCount = 0;  //总页数
	var PrePage = 0;  //上一页号
	var NextPage = 0; //下一页号

	var node_PageSize = PageCond.findNodeByXPath("PageSize");   
	var node_AbsolutePage = PageCond.findNodeByXPath("AbsolutePage");  
	var node_RecordCount = PageCond.findNodeByXPath("RecordCount");  
	var node_PageCount = PageCond.findNodeByXPath("PageCount");  
	var node_PrePage = PageCond.findNodeByXPath("PrePage");  
	var node_NextPage = PageCond.findNodeByXPath("NextPage"); 

	if(node_PageSize!=null) PageSize = parseInt(node_PageSize.value);
	if(node_AbsolutePage!=null) AbsolutePage = parseInt(node_AbsolutePage.value);
	if(PageSize<1) PageSize = 10;
	if(AbsolutePage<1) AbsolutePage = 1;

	var recordSet = Server.CreateObject("ADODB.RecordSet");
	recordSet.Open(sql+"", this.dbconn, 1, 1);
	recordSet.PageSize = PageSize;
	if(recordSet.RecordCount>0) recordSet.AbsolutePage = AbsolutePage;

	RecordCount = recordSet.RecordCount;  
	PageCount = recordSet.PageCount;  
	if(AbsolutePage==1) 
		PrePage = -1;
	else
		PrePage = AbsolutePage - 1;
	if(AbsolutePage==PageCount) 
		NextPage = -1;
	else
		NextPage = AbsolutePage + 1;
	
	if(node_PageSize==null) {
		var tmpNode = new Node("PageSize","",PageSize,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_PageSize.value = PageSize;
	}

	if(node_AbsolutePage==null) {
		var tmpNode = new Node("AbsolutePage","",AbsolutePage,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_AbsolutePage.value = AbsolutePage;
	}

	if(node_RecordCount==null) {
		var tmpNode = new Node("RecordCount","",RecordCount,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_RecordCount.value = RecordCount;
	}

	if(node_PageCount==null) {
		var tmpNode = new Node("PageCount","",PageCount,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_PageCount.value = PageCount;
	}

	if(node_PrePage==null) {
		var tmpNode = new Node("PrePage","",PrePage,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_PrePage.value = PrePage;
	}

	if(node_NextPage==null) {
		var tmpNode = new Node("NextPage","",NextPage,2);
		PageCond.addChildNode(tmpNode);
	}
	else {
		node_NextPage.value = NextPage;
	}

	return recordSet;
}

//查询多条记录,并返回为表单的隐藏域
function runQuerySqlReturnHiddenData(sql, entityName) {
	var recordSet = this.runQuerySql(sql);
	//var tableName = findTableNameInSql(sql);
	var tableName = entityName;

	var recordCount = recordSet.RecordCount;
	var fieldsCount = recordSet.Fields.Count;

	var hiddenData = "";
	for(var i=0; i<recordCount; i++) {
		for(var j=0; j<fieldsCount; j++) {
			var fieldName = recordSet.Fields(j).Name;
			hiddenData += "<input type=\"hidden\" name=\"list/" + tableName + "[@rowNum=&quot;" + i + "&quot;]/" + fieldName + "\" value=\"" + recordSet(fieldName) + "\">\n";
		}
		recordSet.MoveNext();
	}

	recordSet.close();

	return hiddenData;
}




/*=========================================================================================*/
//从TRX_REFNO表得到主键序列,成功则返回序列,不成功返回"-1"
function getRefNo(conn, recordSet, tableName) {
	try{
		var refNo = "";
		var strSQL = "select * from TRX_REFNO where C_TABLE_NAME='" + tableName + "'";
		recordSet.Open(strSQL, conn);
		if(!recordSet.EOF) {
			var refSeq = recordSet("I_REF_SEQ");
			var refLeng = recordSet("I_REF_LENG");
			refNo = "" + refSeq;
			refNo = "00000000000000000000".substr(0,(refLeng-refNo.length)) + refNo;
		}
		else {
			refNo = "-1";
		}
		recordSet.close();
	}
	catch(e) {
		throw e;
	}
	finally {
	}

	setRefNo_add(conn, recordSet, tableName);
	return refNo;
}

//让指定表的当前可用最大序列I_REF_SEQ加一
function setRefNo_add(conn, recordSet, tableName) {
	try {
		var strSQL = "select * from TRX_REFNO where C_TABLE_NAME='" + tableName + "'";
		recordSet.Open(strSQL, conn, 1, 3);
		if(!recordSet.EOF) {
			recordSet("I_REF_SEQ") = recordSet("I_REF_SEQ") + 1;
			recordSet.Update();
		}
		else {
			recordSet.close();
			return "-1"
		}
		recordSet.close();
		return "1";
	}
	catch(e) {
		throw e;
	}
	finally {
		
	}
}

//从TRX_REFNO_NOUSE表得到生成但未使用的主键序列,如果没有找到则返回字符串:"-1"
function getNoUsedRefNo(conn, recordSet, tableName) {
	try {
		var refNo = "";
		var strSQL = "select * from TRX_REFNO_NOUSE where C_REF_NO_STAT='N' and C_TABLE_NAME='" + tableName + "'";
		recordSet.Open(strSQL, conn);
		if(!recordSet.EOF) {
			refNo = recordSet("C_REF_NO") + "";
		}
		else {
			refNo = "-1";
		}
		recordSet.close();
		return refNo;
	}
	catch(e) {
		throw e;
	}
	finally {
	}
}

//保存生成了但没有使用的主键序列
function saveNoUsedRefNo(conn, recordSet, tableName, refNo, refNoStat) {
	try {
		clearNoUsedRefNo(conn, recordSet, tableName, refNo);
		var strSQL = "select * from TRX_REFNO_NOUSE";
		recordSet.Open(strSQL, conn, 1, 3);
		recordSet.AddNew();
		recordSet("C_TABLE_NAME") = tableName;
		recordSet("C_REF_NO") = refNo;
		recordSet("C_REF_NO_STAT") = refNoStat;
		recordSet.Update();
		recordSet.close();
	}
	catch(e) {
		throw e;
	}
	finally {
	}
}

//在生成了但没有使用的主键序列中清除指定序列
function clearNoUsedRefNo(conn, recordSet, tableName, refNo) {
	try {
		var strSQL = "select * from TRX_REFNO_NOUSE where C_TABLE_NAME='" + tableName + "' and C_REF_NO='" + refNo + "' ";
		recordSet.Open(strSQL, conn, 1, 3);
		if(!recordSet.EOF) {
			recordSet.Delete();
			recordSet.Update();
		}
		recordSet.close();
	}
	catch(e) {
		throw e;
	}
	finally {
	}
}

//得到指定表的I_REF_LENG,如果没找到返回-1
function getRefNoLength(conn, recordSet, tableName) {
	try{
		var refNoLength = -1;
		var strSQL = "select * from TRX_REFNO where C_TABLE_NAME='" + tableName + "'";
		recordSet.Open(strSQL, conn);
		if(!recordSet.EOF) {
			refNoLength = parseInt(recordSet("I_REF_LENG"));
		}
		else {
			refNoLength = -1;
		}
		recordSet.close();
		return refNoLength;
	}
	catch(e) {
		throw e;
	}
	finally {
	}
}


function convertQueryCondToSQL(QueryCond) {
	var strSQL = "select * from " + QueryCond.name + " ";
	var whereNode = QueryCond.findNodeByXPath("where");
	if(whereNode!=null && whereNode.value!="") {
		strSQL += "where " + whereNode.value;
	}
	return strSQL;
}

function findTableNameInSql(strSQL) {
	var p1 = strSQL.indexOf(" from ")+6;
	var p2 = strSQL.indexOf(" ",p1);
	var tableName = strSQL.substring(p1,p2);  
	return tableName;
}
/*=========================================================================================*/
%>


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -