#
# 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 = L'objet ResultSet fourni en entr\u00E9e de la m\u00E9thode n'est pas valide
cachedrowsetimpl.invalidp = Le fournisseur de persistance g\u00E9n\u00E9r\u00E9 n'est pas valide
cachedrowsetimpl.nullhash = Impossible de cr\u00E9er une instance de CachedRowSetImpl. Table de hachage NULL fournie au constructeur
cachedrowsetimpl.invalidop = Op\u00E9ration non valide lors de l'insertion de ligne
cachedrowsetimpl.accfailed = Echec de acceptChanges
cachedrowsetimpl.invalidcp = Position du curseur non valide
cachedrowsetimpl.illegalop = Op\u00E9ration non admise sur une ligne non ins\u00E9r\u00E9e
cachedrowsetimpl.clonefail = Echec du clonage : {0}
cachedrowsetimpl.invalidcol = Index de colonne non valide
cachedrowsetimpl.invalcolnm = Nom de colonne non valide
cachedrowsetimpl.boolfail = Echec de getBoolen pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.bytefail = Echec de getByte pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.shortfail = Echec de getShort pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.intfail = Echec de getInt pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.longfail = Echec de getLong pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.floatfail = Echec de getFloat pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.doublefail = Echec de getDouble pour la valeur ({0}) de la colonne {1}
cachedrowsetimpl.dtypemismt = Le type de donn\u00E9es ne correspond pas 
cachedrowsetimpl.datefail = Echec de getDate pour la valeur ({0}) de la colonne {1} - Aucune conversion possible
cachedrowsetimpl.timefail = Echec de getTime pour la valeur ({0}) de la colonne {1} - Aucune conversion possible
cachedrowsetimpl.posupdate = Mises \u00E0 jour choisies non prises en charge
cachedrowsetimpl.unableins = Instanciation impossible : {0}
cachedrowsetimpl.beforefirst = beforeFirst : op\u00E9ration de curseur non valide
cachedrowsetimpl.first = First : op\u00E9ration de curseur non valide
cachedrowsetimpl.last = last : TYPE_FORWARD_ONLY
cachedrowsetimpl.absolute = absolute : position de curseur non valide
cachedrowsetimpl.relative = relative : position de curseur non valide
cachedrowsetimpl.asciistream = \u00E9chec de la lecture pour le flux ASCII
cachedrowsetimpl.binstream = \u00E9chec de la lecture pour le flux binaire
cachedrowsetimpl.failedins = Echec de l'insertion de ligne
cachedrowsetimpl.updateins = appel de updateRow lors de l'insertion de ligne
cachedrowsetimpl.movetoins = moveToInsertRow : CONCUR_READ_ONLY
cachedrowsetimpl.movetoins1 = moveToInsertRow : aucune m\u00E9tadonn\u00E9e
cachedrowsetimpl.movetoins2 = moveToInsertRow : nombre de colonnes non valide
cachedrowsetimpl.tablename = Le nom de la table ne peut pas \u00EAtre NULL
cachedrowsetimpl.keycols = Colonnes de cl\u00E9 non valides
cachedrowsetimpl.invalidcol = Index de colonne non valide
cachedrowsetimpl.opnotsupp = Op\u00E9ration non prise en charge par la base de donn\u00E9es
cachedrowsetimpl.matchcols = Les colonnes correspondantes ne sont pas les m\u00EAmes que les colonnes d\u00E9finies
cachedrowsetimpl.setmatchcols = D\u00E9finir les colonnes correspondantes avant de les prendre
cachedrowsetimpl.matchcols1 = Les colonnes correspondantes doivent \u00EAtre sup\u00E9rieures \u00E0 z\u00E9ro
cachedrowsetimpl.matchcols2 = Les colonnes correspondantes doivent \u00EAtres vides ou ne contenir que des cha\u00EEnes NULL
cachedrowsetimpl.unsetmatch = Les colonnes d\u00E9finies et non d\u00E9finies sont diff\u00E9rentes
cachedrowsetimpl.unsetmatch1 = Utiliser le nom de colonne comme argument pour unsetMatchColumn
cachedrowsetimpl.unsetmatch2 = Utiliser l'ID de colonne comme argument pour unsetMatchColumn
cachedrowsetimpl.numrows = Le nombre de lignes est inf\u00E9rieur \u00E0 z\u00E9ro ou \u00E0 la taille d'extraction
cachedrowsetimpl.startpos = La position de d\u00E9part ne peut pas \u00EAtre n\u00E9gative
cachedrowsetimpl.nextpage = Entrer les donn\u00E9es avant l'appel 
cachedrowsetimpl.pagesize = La taille de la page ne peut pas \u00EAtre n\u00E9gative
cachedrowsetimpl.pagesize1 = La taille de la page ne peut pas \u00EAtre sup\u00E9rieure \u00E0 maxRows
cachedrowsetimpl.fwdonly = ResultSet va en avant seulement
cachedrowsetimpl.type = Le type est : {0}
cachedrowsetimpl.opnotysupp = Op\u00E9ration non encore prise en charge
cachedrowsetimpl.featnotsupp = Fonctionnalit\u00E9 non prise en charge

# WebRowSetImpl exceptions
webrowsetimpl.nullhash = Impossible de cr\u00E9er une instance de WebRowSetImpl. Table de hachage NULL fournie au constructeur
webrowsetimpl.invalidwr = Processus d'\u00E9criture non valide
webrowsetimpl.invalidrd = Processus de lecture non valide

#FilteredRowSetImpl exceptions
filteredrowsetimpl.relative = relative : op\u00E9ration de curseur non valide 
filteredrowsetimpl.absolute = absolute : op\u00E9ration de curseur non valide
filteredrowsetimpl.notallowed = Cette valeur n'est pas autoris\u00E9e via le filtre

#JoinRowSetImpl exceptions
joinrowsetimpl.notinstance = N'est pas une instance de RowSet
joinrowsetimpl.matchnotset = Les colonnes correspondantes ne sont pas d\u00E9finies pour la jointure
joinrowsetimpl.numnotequal = Le nombre d'\u00E9l\u00E9ments dans RowSet est diff\u00E9rent du nombre de colonnes correspondantes
joinrowsetimpl.notdefined = Ce n'est pas un type de jointure d\u00E9fini
joinrowsetimpl.notsupported = Ce type de jointure n'est pas pris en charge
joinrowsetimpl.initerror = Erreur d'initialisation de JoinRowSet
joinrowsetimpl.genericerr = Erreur initiale g\u00E9n\u00E9rique de JoinRowSet
joinrowsetimpl.emptyrowset = Impossible d'ajouter un objet RowSet vide \u00E0 ce JoinRowSet

#JdbcRowSetImpl exceptions
jdbcrowsetimpl.invalstate = Etat non valide
jdbcrowsetimpl.connect = Impossible de connecter JNDI JdbcRowSet (connexion)
jdbcrowsetimpl.paramtype = Impossible de d\u00E9duire le type de param\u00E8tre
jdbcrowsetimpl.matchcols = Les colonnes correspondantes ne sont pas les m\u00EAmes que les colonnes d\u00E9finies
jdbcrowsetimpl.setmatchcols = D\u00E9finir les colonnes correspondantes avant de les prendre
jdbcrowsetimpl.matchcols1 = Les colonnes correspondantes doivent \u00EAtre sup\u00E9rieures \u00E0 z\u00E9ro
jdbcrowsetimpl.matchcols2 = Les colonnes correspondantes ne doivent pas \u00EAtres NULL ni contenir des cha\u00EEnes vides
jdbcrowsetimpl.unsetmatch = Les colonnes non d\u00E9finies ne sont pas les m\u00EAmes que les colonnes d\u00E9finies
jdbcrowsetimpl.usecolname = Utiliser le nom de colonne comme argument pour unsetMatchColumn
jdbcrowsetimpl.usecolid = Utiliser l'ID de colonne comme argument pour unsetMatchColumn
jdbcrowsetimpl.resnotupd = La mise \u00E0 jour de ResultSet est interdite
jdbcrowsetimpl.opnotysupp = Op\u00E9ration non encore prise en charge
jdbcrowsetimpl.featnotsupp = Fonctionnalit\u00E9 non prise en charge

#CachedRowSetReader exceptions
crsreader.connect = Impossible de connecter (JNDI)
crsreader.paramtype = Impossible de d\u00E9duire le type de param\u00E8tre
crsreader.connecterr = Erreur interne dans RowSetReader\u00A0: pas de connexion ni de commande
crsreader.datedetected = Une date a \u00E9t\u00E9 d\u00E9tect\u00E9e
crsreader.caldetected = Un calendrier a \u00E9t\u00E9 d\u00E9tect\u00E9

#CachedRowSetWriter exceptions
crswriter.connect = Impossible d'obtenir la connexion
crswriter.tname = writeData ne peut pas d\u00E9terminer le nom de la table
crswriter.params1 = Valeur de params1 : {0} 
crswriter.params2 = Valeur de params2 : {0} 
crswriter.conflictsno =  conflits lors de la synchronisation 

#InsertRow exceptions
insertrow.novalue = Aucune valeur n'a \u00E9t\u00E9 ins\u00E9r\u00E9e

#SyncResolverImpl exceptions
syncrsimpl.indexval = Valeur d'index hors plage  
syncrsimpl.noconflict = Cette colonne n'est pas en conflit
syncrsimpl.syncnotpos = La synchronisation est impossible
syncrsimpl.valtores = La valeur \u00E0 r\u00E9soudre peut \u00EAtre soit dans la base de donn\u00E9es, soit dans CachedrowSet

#WebRowSetXmlReader exception
wrsxmlreader.invalidcp = Fin de RowSet atteinte. Position de curseur non valide
wrsxmlreader.readxml = readXML : {0}
wrsxmlreader.parseerr = ** Erreur d''analyse : {0} , ligne : {1} , URI : {2}

#WebRowSetXmlWriter exceptions
wrsxmlwriter.ioex = Exception d''E/S : {0}
wrsxmlwriter.sqlex = Exception SQL : {0}
wrsxmlwriter.failedwrite = Echec d'\u00E9criture de la valeur
wsrxmlwriter.notproper = N'est pas un type correct

#XmlReaderContentHandler exceptions
xmlrch.errmap = Erreur lors de la d\u00E9finition du mappage : {0}
xmlrch.errmetadata = Erreur lors de la d\u00E9finition des m\u00E9tadonn\u00E9es : {0}
xmlrch.errinsertval = Erreur lors de l''insertion des valeurs\u00A0: {0}
xmlrch.errconstr = Erreur lors de la construction de la ligne : {0}
xmlrch.errdel = Erreur lors de la suppression de la ligne : {0}
xmlrch.errinsert = Erreur lors de la construction de la ligne \u00E0 ins\u00E9rer : {0}
xmlrch.errinsdel = Erreur lors de la construction de la ligne insdel : {0}
xmlrch.errupdate = Erreur lors de la construction de la ligne \u00E0 mettre \u00E0 jour : {0}
xmlrch.errupdrow = Erreur lors de la mise \u00E0 jour de la ligne\u00A0: {0}
xmlrch.chars = caract\u00E8res :
xmlrch.badvalue = Valeur incorrecte ; cette propri\u00E9t\u00E9 ne peut pas \u00EAtre NULL
xmlrch.badvalue1 = Valeur incorrecte ; ces m\u00E9tadonn\u00E9es ne peuvent pas \u00EAtre NULL
xmlrch.warning =  ** Avertissement : {0} , ligne : {1} , URI : {2}

#RIOptimisticProvider Exceptions
riop.locking = Le verrouillage de la classification n'est pas pris en charge

#RIXMLProvider exceptions
rixml.unsupp = Non pris en charge avec RIXMLProvider
