EddytorDocs & API
07 · Tables A→ZF · Load data

First-load checklist

A pre-flight for loading data cleanly the first time - types, encoding, headers, nulls, domains.

A quick checklist to get the first load right, so you're not cleaning up afterward.

Before you load

  • Inferred the schema - ran infer_schema and reviewed types and domain candidates.
  • IDs are Utf8 - preserves leading zeros (007 stays 007).
  • Money is Decimal (e.g. Decimal(20,4)) - exact, unlike Float32/Float64.
  • Dates typed - Date32 / Timestamp, not left as Utf8.
  • Primary key chosen - primary_key_column exists in the data and is unique.
  • Non-nullable columns listed - the ones that must always have a value.
  • Domains set first - for closed value sets, configure domains before loading so bad values are rejected on write.

File gotchas

  • Encoding - UTF-8. Watch for BOMs and smart quotes from spreadsheets.
  • Header row present and matching your intended column names (case-sensitive).
  • Delimiter - auto-detected (, ; \t |); set explicitly only if detection fails.
  • Empty strings ≠ NULL - decide which you mean and set nullability accordingly.
  • Size - csv_content over MCP has a ~5MB limit; for bigger files, load in batches or use the CLI insert/merge with a file.

After you load

Good to know

If an import fails mid-way (type conflict, duplicate PKs), the table isn't created - fix the data and retry. Nothing half-lands.

Next

On this page