Search notes:

CSV

CSV is probably the most common import and export format for data of spreadsheets and databases.

Problems with CSV files

Although I like the flexibility, ubiquitousness and ease-of use of CSV files, I find they have the following problems
These limitations gave raise to the schema.ini specification of Microsoft. Such a schema.ini file can be used when reading a CSV file with OLE DB provider for Microsoft Access database engine in order to specify the characteristics of the CSV files.

Reasons to use semicolons rather than commas

Although the C in CSV stands for comma, there are good reasons to use semicolons to delimit fields one from another.
One reason is that there are many countries where a comma is already used as a decimal separator (See problems with CSV files).
Also, semicolons make more sense to be used as separators because they are less likely to occur in ordinary text than commas.

Programming languages

Some function examples in various programming languages that allow to read/write CSV data:

See also

Tabular data
Oracle SQL*Loader examples:
Using the SQL function regexp_substr (Oracle) to transform CSV text to individual columns in a select statement.
Oracle's json_table function allows to turn comma separated values into a list of records.
Excel:
pspg is a command line utility to view CSV data (or generally tabular data). (TODO: Compare with usql).
In .NET, a CSV file might be parsed with the Microsoft.VisualBasic.FileIO.TextFieldParser class.
SQLcl allows to create a resultset in CSV
A CSV file can be exported from Access under the menu External Data -> Export
Data exchange formats for tabular data. An alternative to CSV files are Parquet files. These are files with a columnar format as well but can be accessed with better performance and additionally support typed and nested schemas.
CSV (as well as also for example JSON) are prone to data corruption.
xsv is command line program for indexing, slicing, analyzing, splitting and joining CSV files. Commands should be simple, fast and composable:
The @csv instruction of jq.
Papa Parse converts CSV to JSON, and vice versa.

Index