Error de Sql*loader desde la consola de windows de que no puede abrir el archivo .ctl

Tengo un problema al ejecutar el sqlloader, lo estoy intentando ejecutar desde la consola de windows(dos)C:> sqlldr user/pasword archivo.ctl errorrs=10, pero me da un error de que no puede abrir el archivo .ctl y que no encuentra el archivo, por lo que no se que pasa.
Mi pregunta es donde debo guardar el archivo de control ya que yo lo estoy ubicando dentro dela carpeta de oracle, o no se donde debo ubicarlo, he estado probando ejecutarlo en el sqlplus pero me da un error de comando desconocido, ya probé intentando descargar de nuevo desde el cd de instalación pero no pasa nada por fa podrías indicarme si tengo que instalar el sqlloader o si me puedes especificar la ruta en la que debería estar el sqlloader dentro de los archivos de oracle gracias por tu respuesta de antemano te lo agradezco
Respuesta
1
1. Asegúrate que el directorio donde se encuentre el sqlloader esté en la variable PATH (de Windows). Así lo puedes ejecutar desde cualquier lado.
2. El archivo de control lo toma del directorio donde estas parado (si no le especificas nada). También le puedes dar un camino absoluto indicando en un directorio de trabajo o donde quieras almacenar todos los archivos de controles "C:\xxx\archivo.ctr"
Sabes gracias ya puedo ejecutar el sqlloder desde la consola de windows, ahora tengo un error te escribo una parte del archivo de control pa que mires.
En la parte en la que pongo
FIELDS TERMINATED BY ','
VALOR DECIMAL EXTERNAL,
...
...
ESTADO CHAR(10));
Me da el error de que fields es una palabra clave,
opte por poner para cada campo
VALOR DECIMAL EXTERNAL TERMINATED BY',',
ESTADO CHAR(10) TERMINATED BY ','
Y así para todos pero me da otro error que dice
error 350 de sintaxis se espera especificación valida de columna, "," o ")" se ha encontrado palabra clave terminated.
Ya probé cambiando las comillas simples por las dobles pero sigue con el mismo error. Creo el archivo tal cual tengo en unas consultas
Otra duda que tengo es que la ventana inicial del oracle enterprise manager dice que no ha podido conectar con la instancia de base de datos, por lo que me muestra solo estaisticas de la base de datos y no me permite por ninguna opción entrar a ver las pantallas de administración que he visto en internet que debe salir.
Yo me conecto http://miservidor:5501/em que es la dirección que me da cuando creo la base de datos, pero siempre me sale ese error, y no puedo ingresar al enterprise manager.
Otra duda que tengo es cuando yo abro el administrador de windows donde se ven las bases de datos que cree, yo hago clic derecho conectar base de datos y me sale una ventana en la cual me pide ingresar el servidor de red y no se que poner por lo cual no puedo conectar, te aclaro no tengo internet estoy solo en mi pc ademas estuve moneando lo de los listener pero no entiendo muy bien,
por cierto en cuanto a la creación de la taba para que pertenezca a un table space especifico estuve buscando la sintaxis completa pero no encuentro solo hay create table nombretable(Y CAMPOS) vi que e la creación de un indice se especifica el tablespace y la tabla así que trate de hacer algo parecido a esto:
create table barras
tablespace barra_tablespace
storage(initial 100k next 100k)*****pero justo aqui me da un error
campo1 number,
campo2 varchar2(20),
campo3 varchar2(20)
) ;
Así que con todo voy a seguir buscando, si puedes ayudarme con estas dudas te lo agradecería
Sobre el loader debes de estar escribiendo algo mal, revisa los paréntesis entre lo campos.
En la siguiente página tienes te muestra todas las opciones con algunos ejemplos, incluso tienen una tabla y datos. Prueba con una de estas para asegurarte que te funcione todo y luego retornas a tu sistema escribiendo el comando lo más parecido que puedas.
http://www.psoug.org/reference/sqlloader.html
Para crear indicarle el tablespace a una tabla es de la misma forma que el índice, mira también en este mismo sitio todos los temas que tienen, allí hay para la creación de tablas y casi todos los temas que se te ocurra.
Si tienes definida la base de datos en el tnsnames. Ora, la pudees seleccionar al agregar una base de datos (forma no manual). ¿Estás segura que la base de datos esta arriba?

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas