<%... '*====================================== '* 名称:useDb.asp '* 功能:数据库操作函数库 '* 作者:intereye '* 信箱:inteye@163.com '* 主页:http://www.inteye.net '* BLOG:http://blog.csdn.net/intereye '*====================================== '* 函数:openDb(dbType,dbUser,dbPass,dbName,dbServer,dbPath) '* 功能:打开数据库连接 '* 参数:dbType->数据库类型 MDB ACCESS数据库 || SQLSERVER SQLSERVER数据库 '* 参数:dbUser->访问数据库用户名 '* 参数:dbPass->访问数据库密码 '* 参数:dbName->数据库名称 '* 参数:dbServer->数据库Host '* 参数:dbPath->数据库路径 Function openDb(dbType,dbUser,dbPass,dbName,dbServer,dbPath) Dim Conn Set Conn = Server.CreateObject("ADODB.Connection") Selectcase dbType case"MDB": connStr ="driver={Microsoft Access Driver (*.mdb)};dbq="& Server.MapPath(""&dbPath&dbName&"") case"SQLSERVER": connStr ="Provider=SQLOLEDB.1;Password="&dbPass&";Persist Security Info=True;User ID="&dbUser&";Initial Catalog="&dbName&";Data Source="&dbServer&"" EndSelect Conn.Open connStr End Function '* 函数:add(tabname,fieldlist,dblist) '* 功能:在数据库中插入一条记录 '* 参数:tabname->数据表名 '* 参数:dblist->数据表字段名数组 '* 参数:fieldlist->表单变量名数组 '* 返回:0 false || 1 true Function add(tabname,dblist,fieldlist) Sql ="Insert INTO "&tabname&"(" Value ="" Field ="" ForEach v in dblist Field = Field & v &"," Next Field =Left(Field,Len(Field)-1) Value = Field &") VALUES(" ForEach v in fieldlist If Request.Form(v) <>""Then Value = Value &"'"& Request.Form(v) &"'," Else Value = Value &"'"& v &"'," EndIf Next Value =Left(Value,Len(Value)-1) Sql = Sql & Value &")" Conn.Execute(Sql) CloseDb() If Err Then add =0 Else add =1 EndIf End Function '* 函数:update(tabname,dblist,fieldlist,id) '* 功能:更新数据库中指定的一条记录 '* 参数:tabname->数据表名 '* 参数:dblist->数据库字段名称数组 '* 参数:fieldlist->表单变量名数组 '* 参数:id->数据ID号 '* 返回:0 false || 1 true Function update(tabname,dblist,fieldlist,id) Sql ="Update "& tabname &" Set " Value ="" For i=0toubound(dblist) Value = Value & dblist(i) &"='" If Request.Form(fieldlist(i)) <>""Then Value = Value & Request.Form(fieldlist(i)) &"'," Else Value = Value & fieldlist(i) &"'," EndIf Next Value =Left(Value,Len(Value)-1) Sql = Sql & Value &" Where id="& id Conn.Execute(Sql) CloseDb() If Err Then update =0 Else update =1 EndIf End Function '* 函数:del(tabname,id) '* 功能:从数据库中删除一条指定记录 '* 参数:tabname->数据表名称 '* 参数:id->数据ID号 '* 返回:0 false || 1 true Function del(tabname,id) Sql ="Delete FROM "& tabname &" Where id in("& id &")" Conn.Execute(Sql) CloseDb() If Err Then del =0 Else del =1 EndIf End Function '* 函数:getRow(tabname,fieldlist,caseStr) '* 功能:从数据库中取得一行 '* 参数:tabname->数据表名 '* 参数:fieldlist->数据字段数组 '* 参数:caseStr->Sql条件语句 Function getRow(tabname,fieldlist,caseStr) IfNotisArray(fieldlist) Then fieldlist ="*" Else Field ="" ForEach val in fieldlist Field = Field & val &"," Next fieldlist =Left(Field,Len(Field)-1) EndIf Sql ="Select "& fieldlist &" FROM "& tabname & caseStr Set Rs = Conn.Execute(Sql) If Rs.Eof AND Rs.Bof Then getRow =0 Else getRow =1 EndIf End Function '* 函数:CloseDb() '* 功能:关闭数据库连接并释放对象 Function CloseDb() Conn.Close Set Conn =Nothing End Function %>