Exasol Import Skill
This skill covers only workflows that move data into Exasol.
Step 0: Establish Connection
Ensure a working exapump profile before giving terminal workflows that use
exapump upload:
- If the user names a profile, test it with
exapump sql --profile <name> "SELECT 1"; always place --profile after the subcommand. Otherwise test the default profile with exapump sql "SELECT 1".
- On success, proceed — and keep the same
--profile <name> after the subcommand on every later command, such as exapump upload --profile <name> <file> --table <schema.table>.
- On failure, run
exapump profile list to see which profiles exist.
- If profiles exist, present them and ask which to use, then inspect that one with
exapump profile show <name> — it masks credentials — to confirm the required fields are set. Never read, cat, or print ~/.exapump/config.toml; it stores credentials in clear text. If a credential value does appear in any command output, do not repeat it in the conversation.
- If no usable profile exists, have the user create one locally with
exapump profile add <name> (omit --password and exapump prompts on a hidden line) or exapump profile init, then retry step 1. Never ask the user to paste a password into the conversation, and never pass one as a command-line argument.
Trigger when the user mentions IMPORT, IMPORT INTO, upload CSV, upload Parquet, local file load, exapump upload, S3 import, Azure Blob import, GCS import, Parquet import, or CREATE CONNECTION together with import or object-store loading intent.
Routing Algorithm
Local files on the user machine
- Trigger phrases:
upload csv, upload parquet, exapump upload, from local
- Load:
references/import.md
Remote or cloud files reachable by Exasol
- Trigger phrases:
IMPORT, IMPORT INTO, S3, Azure Blob, GCS, FTP, SFTP, HTTP, HTTPS, CREATE CONNECTION with import or object-store loading intent
- Load:
references/import.md
Parquet-specific behavior
- Trigger phrases:
parquet, SOURCE COLUMN NAMES, SkipCols, MaxConnections, MaxConcurrentReads
- Load:
references/import.md
Notes
- Use this skill only for direct data movement into Exasol.
- Use exasol-export for native
EXPORT, local export workflows, and CREATE CONNECTION questions tied to export target setup.
- Use exasol-database for general
CREATE CONNECTION questions, SQL, schema inspection, and table design.
- Use exasol-cloud-storage-extension when the user explicitly wants extension-based object-storage loading. Use exasol-document-virtual-schemas for federated read-only object or file storage access or exasol-jdbc-virtual-schemas for federated read-only database access. Use exasol-extension-catalog only when the user is still choosing among those families.
1---2name: exasol-import3description: Use Exasol `IMPORT` and `IMPORT INTO` SQL plus `exapump upload` local file workflows for moving data into Exasol. Covers CSV, FBV, and Parquet, `CREATE CONNECTION` connection objects for import, cloud credential patterns for S3, Azure Blob Storage, and Google Cloud Storage (GCS), reject handling, and staging-based import workflows. Native IMPORT does not read Avro, ORC, or Delta — those object-storage formats need the Cloud Storage Extension instead.4---56# Exasol Import Skill78This skill covers only workflows that move data into Exasol.910## Step 0: Establish Connection1112Ensure a working `exapump` profile before giving terminal workflows that use13`exapump upload`:14151. If the user names a profile, test it with `exapump sql --profile <name> "SELECT 1"`; always place `--profile` after the subcommand. Otherwise test the default profile with `exapump sql "SELECT 1"`.162. On success, proceed — and keep the same `--profile <name>` after the subcommand on every later command, such as `exapump upload --profile <name> <file> --table <schema.table>`.173. On failure, run `exapump profile list` to see which profiles exist.184. If profiles exist, present them and ask which to use, then inspect that one with `exapump profile show <name>` — it masks credentials — to confirm the required fields are set. **Never read, `cat`, or print `~/.exapump/config.toml`; it stores credentials in clear text.** If a credential value does appear in any command output, do not repeat it in the conversation.195. If no usable profile exists, have the user create one locally with `exapump profile add <name>` (omit `--password` and exapump prompts on a hidden line) or `exapump profile init`, then retry step 1. Never ask the user to paste a password into the conversation, and never pass one as a command-line argument.2021Trigger when the user mentions **IMPORT**, **IMPORT INTO**, **upload CSV**, **upload Parquet**, **local file load**, **exapump upload**, **S3 import**, **Azure Blob import**, **GCS import**, **Parquet import**, or **CREATE CONNECTION** together with import or object-store loading intent.2223## Routing Algorithm24251. **Local files on the user machine**26 - Trigger phrases: `upload csv`, `upload parquet`, `exapump upload`, `from local`27 - Load: `references/import.md`28292. **Remote or cloud files reachable by Exasol**30 - Trigger phrases: `IMPORT`, `IMPORT INTO`, `S3`, `Azure Blob`, `GCS`, `FTP`, `SFTP`, `HTTP`, `HTTPS`, `CREATE CONNECTION` with import or object-store loading intent31 - Load: `references/import.md`32333. **Parquet-specific behavior**34 - Trigger phrases: `parquet`, `SOURCE COLUMN NAMES`, `SkipCols`, `MaxConnections`, `MaxConcurrentReads`35 - Load: `references/import.md`3637## Notes3839- Use this skill only for direct data movement into Exasol.40- Use **exasol-export** for native `EXPORT`, local export workflows, and `CREATE CONNECTION` questions tied to export target setup.41- Use **exasol-database** for general `CREATE CONNECTION` questions, SQL, schema inspection, and table design.42- Use **exasol-cloud-storage-extension** when the user explicitly wants extension-based object-storage loading. Use **exasol-document-virtual-schemas** for federated read-only object or file storage access or **exasol-jdbc-virtual-schemas** for federated read-only database access. Use **exasol-extension-catalog** only when the user is still choosing among those families.