Bonjour ,
J'essaie de charger une table sous Linux via sql loader et la commande suivante:
J'ai l'erreur suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part (sqlldr user/mdp@SID silent=header,feedback control=nom_table.ctl log=nom_table.log bad=nom_table.bad direct=false
J'ai regardé les privlièdes associé au user dans USER_TAB_PRIVS et il bien les droits: DELETE, insert, select, update.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3 470 SQL*Loader-926: OCI error while executing delete/truncate (due to REPLACE/TRUNCATE keyword) for table "ORACLE"."NOM_TABLE" 471 ORA-01031: insufficient privileges
du coup, j'ai voulu m'assuer, et j'ai lancé les deux commandes suivantes sous SQL devlopper:
- delete from nom_table => les données sont effacés
- truncate table nom_table:
-truncate table ORACLE.nom_table:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Erreur commençant à la ligne 6 de la commande : truncate table saf_dev Rapport d'erreur : Erreur SQL : ORA-00942: Table ou vue inexistante 00942. 00000 - "table or view does not exist" *Cause: *Action:
Le synonyme est bien ajouté sur la table ( sinon le delete n'aurait pas fonctionné)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 Erreur commençant à la ligne 6 de la commande : truncate table ORACLE.saf_dev Rapport d'erreur : Erreur SQL : ORA-01031: privilèges insuffisants 01031. 00000 - "insufficient privileges" *Cause: An attempt was made to change the current username or password without the appropriate privilege. This error also occurs if attempting to install a database without the necessary operating system privileges. When Trusted Oracle is configure in DBMS MAC, this error may occur if the user was granted the necessary privilege at a higher label than the current login. *Action: Ask the database administrator to perform the operation or grant the required privileges. For Trusted Oracle users getting this error although granted the the appropriate privilege at a higher label, ask the database administrator to regrant the privilege at the appropriate label.
Et comme cerise sur le gâteau , j'appelle le sql loader sur toutes les autres tables de ma base et ça fonctionne très bien. sauf pour celle là .
Partager