#
# Copyright (c) 2005, 2013, Oracle and/or its affiliates. All rights reserved.
# DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
#
# This code is free software; you can redistribute it and/or modify it
# under the terms of the GNU General Public License version 2 only, as
# published by the Free Software Foundation.  Oracle designates this
# particular file as subject to the "Classpath" exception as provided
# by Oracle in the LICENSE file that accompanied this code.
#
# This code is distributed in the hope that it will be useful, but WITHOUT
# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
# FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
# version 2 for more details (a copy is included in the LICENSE file that
# accompanied this code).
#
# You should have received a copy of the GNU General Public License version
# 2 along with this work; if not, write to the Free Software Foundation,
# Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
#
# Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
# or visit www.oracle.com if you need additional information or have any
# questions.
#

# CacheRowSetImpl exceptions
cachedrowsetimpl.populate = \u70BA\u690D\u5165\u65B9\u6CD5\u63D0\u4F9B\u7684 ResultSet \u7269\u4EF6\u7121\u6548
cachedrowsetimpl.invalidp = \u7522\u751F\u7684\u6301\u7E8C\u6027\u63D0\u4F9B\u8005\u7121\u6548
cachedrowsetimpl.nullhash = \u7121\u6CD5\u5EFA\u7ACB CachedRowSetImpl \u57F7\u884C\u8655\u7406\u3002\u70BA\u5EFA\u69CB\u5B50\u63D0\u4F9B\u7684 Hashtable \u70BA\u7A7A\u503C
cachedrowsetimpl.invalidop = \u63D2\u5165\u5217\u6642\u7684\u4F5C\u696D\u7121\u6548
cachedrowsetimpl.accfailed = acceptChanges \u5931\u6557
cachedrowsetimpl.invalidcp = \u6E38\u6A19\u4F4D\u7F6E\u7121\u6548
cachedrowsetimpl.illegalop = \u975E\u63D2\u5165\u5217\u4E0A\u5B58\u5728\u7121\u6548\u4F5C\u696D
cachedrowsetimpl.clonefail = \u8907\u88FD\u5931\u6557: {0}
cachedrowsetimpl.invalidcol = \u6B04\u7D22\u5F15\u7121\u6548
cachedrowsetimpl.invalcolnm = \u6B04\u540D\u7121\u6548
cachedrowsetimpl.boolfail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getBoolen \u5931\u6557
cachedrowsetimpl.bytefail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getByte \u5931\u6557
cachedrowsetimpl.shortfail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getShort \u5931\u6557
cachedrowsetimpl.intfail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getInt \u5931\u6557
cachedrowsetimpl.longfail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getLong \u5931\u6557
cachedrowsetimpl.floatfail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getFloat \u5931\u6557
cachedrowsetimpl.doublefail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getDouble \u5931\u6557
cachedrowsetimpl.dtypemismt = \u8CC7\u6599\u985E\u578B\u4E0D\u76F8\u7B26
cachedrowsetimpl.datefail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getDate \u5931\u6557\uFF0C\u672A\u9032\u884C\u8F49\u63DB
cachedrowsetimpl.timefail = \u5C0D\u6B04 {1} \u4E2D\u7684\u503C ( {0} ) \u57F7\u884C getTime \u5931\u6557\uFF0C\u672A\u9032\u884C\u8F49\u63DB
cachedrowsetimpl.posupdate = \u4E0D\u652F\u63F4\u5B9A\u4F4D\u7684\u66F4\u65B0
cachedrowsetimpl.unableins = \u7121\u6CD5\u5EFA\u7ACB: {0}
cachedrowsetimpl.beforefirst = beforeFirst: \u6E38\u6A19\u4F5C\u696D\u7121\u6548
cachedrowsetimpl.first = First: \u6E38\u6A19\u4F5C\u696D\u7121\u6548
cachedrowsetimpl.last = last : TYPE_FORWARD_ONLY
cachedrowsetimpl.absolute = absolute: \u6E38\u6A19\u4F4D\u7F6E\u7121\u6548
cachedrowsetimpl.relative = relative: \u6E38\u6A19\u4F4D\u7F6E\u7121\u6548
cachedrowsetimpl.asciistream = \u8B80\u53D6 ascii \u4E32\u6D41\u5931\u6557
cachedrowsetimpl.binstream = \u8B80\u53D6\u4E8C\u9032\u4F4D\u4E32\u6D41\u5931\u6557
cachedrowsetimpl.failedins = \u63D2\u5165\u5217\u5931\u6557
cachedrowsetimpl.updateins = \u63D2\u5165\u5217\u6642\u547C\u53EB updateRow
cachedrowsetimpl.movetoins = moveToInsertRow: CONCUR_READ_ONLY
cachedrowsetimpl.movetoins1 = moveToInsertRow: \u6C92\u6709\u63CF\u8FF0\u8CC7\u6599
cachedrowsetimpl.movetoins2 = moveToInsertRow: \u6B04\u6578\u7121\u6548
cachedrowsetimpl.tablename = \u8868\u683C\u540D\u7A31\u4E0D\u80FD\u70BA\u7A7A\u503C
cachedrowsetimpl.keycols = \u95DC\u9375\u6B04\u7121\u6548
cachedrowsetimpl.invalidcol = \u6B04\u7D22\u5F15\u7121\u6548
cachedrowsetimpl.opnotsupp = \u8CC7\u6599\u5EAB\u4E0D\u652F\u63F4\u4F5C\u696D
cachedrowsetimpl.matchcols = \u5339\u914D\u6B04\u548C\u8A2D\u5B9A\u7684\u6B04\u4E0D\u540C
cachedrowsetimpl.setmatchcols = \u5728\u53D6\u5F97\u5339\u914D\u6B04\u4E4B\u524D\u8A2D\u5B9A\u5B83\u5011
cachedrowsetimpl.matchcols1 = \u5339\u914D\u6B04\u61C9\u5927\u65BC 0
cachedrowsetimpl.matchcols2 = \u5339\u914D\u6B04\u61C9\u70BA\u7A7A\u767D\u5B57\u4E32\u6216\u7A7A\u503C\u5B57\u4E32
cachedrowsetimpl.unsetmatch = \u53D6\u6D88\u8A2D\u5B9A\u7684\u6B04\u548C\u8A2D\u5B9A\u7684\u6B04\u4E0D\u540C
cachedrowsetimpl.unsetmatch1 = \u4F7F\u7528\u6B04\u540D\u4F5C\u70BA unsetMatchColumn \u7684\u5F15\u6578
cachedrowsetimpl.unsetmatch2 = \u4F7F\u7528\u6B04 ID \u4F5C\u70BA unsetMatchColumn \u7684\u5F15\u6578
cachedrowsetimpl.numrows = \u5217\u6578\u5C0F\u65BC\u96F6\u6216\u5C0F\u65BC\u64F7\u53D6\u5927\u5C0F
cachedrowsetimpl.startpos = \u8D77\u59CB\u4F4D\u7F6E\u4E0D\u80FD\u70BA\u8CA0\u6578
cachedrowsetimpl.nextpage = \u5728\u547C\u53EB\u4E4B\u524D\u690D\u5165\u8CC7\u6599 
cachedrowsetimpl.pagesize = \u9801\u9762\u5927\u5C0F\u4E0D\u80FD\u5C0F\u65BC\u96F6
cachedrowsetimpl.pagesize1 = \u9801\u9762\u5927\u5C0F\u4E0D\u80FD\u5927\u65BC maxRows
cachedrowsetimpl.fwdonly = ResultSet \u53EA\u80FD\u5411\u524D\u9032\u884C
cachedrowsetimpl.type = \u985E\u578B\u662F: {0}
cachedrowsetimpl.opnotysupp = \u5C1A\u4E0D\u652F\u63F4\u8A72\u4F5C\u696D
cachedrowsetimpl.featnotsupp = \u4E0D\u652F\u63F4\u8A72\u529F\u80FD

# WebRowSetImpl exceptions
webrowsetimpl.nullhash = \u7121\u6CD5\u5EFA\u7ACB WebRowSetImpl \u57F7\u884C\u8655\u7406\u3002\u70BA\u5EFA\u69CB\u5B50\u63D0\u4F9B\u7684 Hashtable \u70BA\u7A7A\u503C
webrowsetimpl.invalidwr = \u5BEB\u5165\u5668\u7121\u6548
webrowsetimpl.invalidrd = \u8B80\u53D6\u5668\u7121\u6548

#FilteredRowSetImpl exceptions
filteredrowsetimpl.relative = relative: \u6E38\u6A19\u4F5C\u696D\u7121\u6548 
filteredrowsetimpl.absolute = absolute: \u6E38\u6A19\u4F5C\u696D\u7121\u6548
filteredrowsetimpl.notallowed = \u4E0D\u5141\u8A31\u6B64\u503C\u901A\u904E\u7BE9\u9078

#JoinRowSetImpl exceptions
joinrowsetimpl.notinstance = \u4E0D\u662F rowset \u7684\u57F7\u884C\u8655\u7406
joinrowsetimpl.matchnotset = \u672A\u8A2D\u5B9A\u7528\u65BC\u9023\u7D50\u7684\u5339\u914D\u6B04
joinrowsetimpl.numnotequal = rowset \u4E2D\u7684\u5143\u7D20\u6578\u4E0D\u7B49\u65BC\u5339\u914D\u6B04
joinrowsetimpl.notdefined = \u9019\u4E0D\u662F\u9023\u7D50\u7684\u5DF2\u5B9A\u7FA9\u985E\u578B
joinrowsetimpl.notsupported = \u4E0D\u652F\u63F4\u6B64\u985E\u9023\u7D50
joinrowsetimpl.initerror = JoinRowSet \u521D\u59CB\u5316\u932F\u8AA4
joinrowsetimpl.genericerr = \u4E00\u822C\u7684 joinrowset \u521D\u59CB\u5316\u932F\u8AA4
joinrowsetimpl.emptyrowset = \u7121\u6CD5\u5C07\u7A7A rowset \u65B0\u589E\u81F3\u6B64 JoinRowSet

#JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = \u72C0\u614B\u7121\u6548
jdbcrowsetimpl.connect = JdbcRowSet (\u9023\u7DDA) JNDI \u7121\u6CD5\u9023\u7DDA
jdbcrowsetimpl.paramtype = \u7121\u6CD5\u63A8\u65B7\u53C3\u6578\u985E\u578B
jdbcrowsetimpl.matchcols = \u5339\u914D\u6B04\u548C\u8A2D\u5B9A\u7684\u6B04\u4E0D\u540C
jdbcrowsetimpl.setmatchcols = \u8981\u5148\u8A2D\u5B9A\u5339\u914D\u6B04\uFF0C\u624D\u80FD\u53D6\u5F97\u5B83\u5011
jdbcrowsetimpl.matchcols1 = \u5339\u914D\u6B04\u61C9\u5927\u65BC 0
jdbcrowsetimpl.matchcols2 = \u5339\u914D\u6B04\u4E0D\u80FD\u70BA\u7A7A\u767D\u5B57\u4E32\u6216\u7A7A\u503C\u5B57\u4E32
jdbcrowsetimpl.unsetmatch = \u53D6\u6D88\u8A2D\u5B9A\u7684\u6B04\u548C\u8A2D\u5B9A\u7684\u6B04\u4E0D\u540C
jdbcrowsetimpl.usecolname = \u4F7F\u7528\u6B04\u540D\u4F5C\u70BA unsetMatchColumn \u7684\u5F15\u6578
jdbcrowsetimpl.usecolid = \u4F7F\u7528\u6B04 ID \u4F5C\u70BA unsetMatchColumn \u7684\u5F15\u6578
jdbcrowsetimpl.resnotupd = ResultSet \u4E0D\u53EF\u66F4\u65B0
jdbcrowsetimpl.opnotysupp = \u5C1A\u4E0D\u652F\u63F4\u8A72\u4F5C\u696D
jdbcrowsetimpl.featnotsupp = \u4E0D\u652F\u63F4\u8A72\u529F\u80FD

#CachedRowSetReader exceptions
crsreader.connect = (JNDI) \u7121\u6CD5\u9023\u7DDA
crsreader.paramtype = \u7121\u6CD5\u63A8\u65B7\u53C3\u6578\u985E\u578B
crsreader.connecterr = RowSetReader \u4E2D\u51FA\u73FE\u5167\u90E8\u932F\u8AA4: \u7121\u9023\u7DDA\u6216\u547D\u4EE4
crsreader.datedetected = \u5075\u6E2C\u5230\u65E5\u671F
crsreader.caldetected = \u5075\u6E2C\u5230\u884C\u4E8B\u66C6

#CachedRowSetWriter exceptions
crswriter.connect = \u7121\u6CD5\u53D6\u5F97\u9023\u7DDA
crswriter.tname = writeData \u4E0D\u80FD\u6C7A\u5B9A\u8868\u683C\u540D\u7A31
crswriter.params1 = params1 \u7684\u503C: {0} 
crswriter.params2 = params2 \u7684\u503C: {0} 
crswriter.conflictsno =  \u540C\u6B65\u5316\u6642\u767C\u751F\u885D\u7A81 

#InsertRow exceptions
insertrow.novalue = \u5C1A\u672A\u63D2\u5165\u503C

#SyncResolverImpl exceptions
syncrsimpl.indexval = \u7D22\u5F15\u503C\u8D85\u51FA\u7BC4\u570D  
syncrsimpl.noconflict = \u6B64\u6B04\u4E0D\u885D\u7A81
syncrsimpl.syncnotpos = \u4E0D\u53EF\u80FD\u540C\u6B65\u5316
syncrsimpl.valtores = \u8981\u89E3\u6790\u7684\u503C\u53EF\u4F4D\u65BC\u8CC7\u6599\u5EAB\u6216 cachedrowset \u4E2D

#WebRowSetXmlReader exception
wrsxmlreader.invalidcp = \u5DF2\u5230\u9054 RowSet \u7D50\u5C3E\u3002\u6E38\u6A19\u4F4D\u7F6E\u7121\u6548
wrsxmlreader.readxml = readXML: {0}
wrsxmlreader.parseerr = ** \u5256\u6790\u932F\u8AA4: {0}\uFF0C\u884C: {1}\uFF0Curi: {2}

#WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = IOException : {0}
wrsxmlwriter.sqlex = SQLException : {0}
wrsxmlwriter.failedwrite = \u5BEB\u5165\u503C\u5931\u6557
wsrxmlwriter.notproper = \u4E0D\u662F\u6B63\u78BA\u985E\u578B

#XmlReaderContentHandler exceptions
xmlrch.errmap = \u8A2D\u5B9A\u5C0D\u6620\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errmetadata = \u8A2D\u5B9A\u63CF\u8FF0\u8CC7\u6599\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errinsertval = \u63D2\u5165\u503C\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errconstr = \u5EFA\u69CB\u5217\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errdel = \u522A\u9664\u5217\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errinsert = \u5EFA\u69CB\u63D2\u5165\u5217\u6642\u767C\u751F\u932F\u8AA4 : {0}
xmlrch.errinsdel = \u5EFA\u69CB insdel \u5217\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errupdate = \u5EFA\u69CB\u66F4\u65B0\u5217\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.errupdrow = \u66F4\u65B0\u5217\u6642\u767C\u751F\u932F\u8AA4: {0}
xmlrch.chars = \u5B57\u5143: 
xmlrch.badvalue = \u932F\u8AA4\u7684\u503C; \u5C6C\u6027\u4E0D\u80FD\u70BA\u7A7A\u503C
xmlrch.badvalue1 = \u932F\u8AA4\u7684\u503C; \u63CF\u8FF0\u8CC7\u6599\u4E0D\u80FD\u70BA\u7A7A\u503C
xmlrch.warning =  ** \u8B66\u544A: {0}\uFF0C\u884C: {1}\uFF0Curi: {2}

#RIOptimisticProvider Exceptions
riop.locking = \u4E0D\u652F\u63F4\u9396\u5B9A\u5206\u985E

#RIXMLProvider exceptions
rixml.unsupp = RIXMLProvider \u4E0D\u652F\u63F4
