on error resume next dim key ,ts , pk for each key in options if key<>"auto" AND key<>"validate" AND Not isEmpty(options(key)) Then select case key case "unionAll" POP_MVC.dict.edit parsedOptions,key,tool.tool.ParseUnionAll( options("unionAll") ) case "union" POP_MVC.dict.edit parsedOptions,key,tool.tool.ParseUnion( options("union") ) case "table" POP_MVC.dict.edit parsedOptions,key,tool.ParseTable( options("table") ) case "leftJoin" POP_MVC.dict.edit parsedOptions,key,tool.ParseLeftJoin( options("leftJoin") ) case "top" if tool.isMicroDB then '如果是微软数据为库,则赋值top POP_MVC.dict.edit parsedOptions,key,tool.ParseTop( options("top") ) else '如果不是微软数据为库,则赋值limit POP_MVC.dict.edit parsedOptions,"limit",tool.ParseTop( options("top") ) end if case "field","fieldRev" POP_MVC.dict.edit parsedOptions,"field",ParseField( options ) case "where" if is_numeric( options(key) ) then if not isEmpty( parsedOptions("table") ) and parsedOptions("table") <> "" then if not tool.isDbType("excel") Then set ts = getTableStructure( parsedOptions("table") ) pk = getPrikey(parsedOptions("table")) if tool.isMicroDB then parsedOptions(key) = "[" & pk & "]" & " = " & getSqlStr( ts(pk) , options(key) ) else parsedOptions(key) = "`" & pk & "`" & " = " & getSqlStr( ts(pk) , options(key) ) end if else parsedOptions(key) = "`" & getPrikey(parsedOptions("table")) & "`" & " = " & options(key) & "" end if elseif not isEmpty( tableName ) and tableName <> "" then if not tool.isDbType("excel") Then set ts = getTableStructure( tableName ) pk = getPK() if tool.isMicroDB then parsedOptions(key) = "[" & pk & "]" & " = " & getSqlStr( ts(pk) , options(key) ) else parsedOptions(key) = "`" & pk & "`" & " = " & getSqlStr( ts(pk) , options(key) ) end if else parsedOptions(key) = "`" & getPK() & "`" & " = " & options(key) end if else end if else POP_MVC.dict.edit parsedOptions,key,ParseWhere( options("where") ) end if case "data" POP_MVC.dict.edit parsedOptions,key,tool.ParseData( options("data") ) case "order" POP_MVC.dict.edit parsedOptions,key,tool.ParseOrder( options("order") ) case "group" POP_MVC.dict.edit parsedOptions,key,tool.ParseGroup( options("group") ) case "having" POP_MVC.dict.edit parsedOptions,key,ParseHaving( options("having") ) case "limit" if tool.isMicroDB then POP_MVC.dict.edit parsedOptions,"top",tool.ParseLimit( options("limit") ) else POP_MVC.dict.edit parsedOptions,key,tool.ParseLimit( options("limit") ) end if case "page" POP_MVC.dict.edit parsedOptions,key,tool.ParsePage( options("page") ) End Select End If next if isEmpty( parsedOptions("field") ) Then parsedOptions("field") = "*" End If call L_( Me.db_type & " parseOptions" )