id = "unixodbc"
name = "unixODBC"
homepage = "https://www.unixodbc.org"
executables = ["isql", "odbcinst"]
platforms = ["macos", "linux"]
[dotfiles]
paths = ["~/.odbc.ini"]
exclude = []
secret = []
side_effect = false
[[dotfiles.secret_paths]]
file = "~/.odbc.ini"
match = { prefix = ["Password", "PWD", "password", "pwd"] }
[commands]
format = 1
label = "Connect with isql"
description = "Opens isql against a DSN, or runs SQL from standard input in batch mode. The password argument is left out so it is not typed into shell history; isql prompts or reads it from the DSN."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = true, short_bundles = false }
[[commands.source]]
id = "manual"
kind = "manual"
url = "https://manpages.debian.org/unstable/unixodbc/isql.1.en.html"
revision = "2.3.14"
evidence = """
isql DSN [USER [PASSWORD]] [options]
-b
Run 'isql' in non-interactive batch mode. In this mode, 'isql' processes
-dDELIMITER
Delimit columns with the specified delimiter.
-w
Format the result as an HTML table.
-c
Output the names of the columns on the first row. This option can only be
used with the -d or -x options.
-q
Wrap the character fields in double quotes.
-v
Enable verbose mode, fully describing all errors. This option is useful
"""
[[commands.field]]
id = "dsn"
label = "Data source name (DSN)"
type = "string"
position = 0
min = 1
sources = ["manual"]
[[commands.field]]
id = "user"
label = "User"
type = "string"
position = 1
sources = ["manual"]
[[commands.field]]
id = "batch"
label = "Batch mode (SQL from stdin)"
type = "boolean"
option = ["-b"]
sources = ["manual"]
[[commands.field]]
id = "delimiter"
label = "Column delimiter"
type = "string"
option = ["-d"]
sources = ["manual"]
[[commands.field]]
id = "column_names"
label = "Print column names"
description = "Needs a column delimiter."
type = "boolean"
option = ["-c"]
sources = ["manual"]
[[commands.field]]
id = "html"
label = "HTML table output"
type = "boolean"
option = ["-w"]
sources = ["manual"]
[[commands.field]]
id = "quote"
label = "Quote character fields"
type = "boolean"
option = ["-q"]
sources = ["manual"]
[[commands.field]]
id = "verbose"
label = "Verbose errors"
type = "boolean"
option = ["-v"]
sources = ["manual"]
[[commands.task]]
id = "interactive"
label = "Interactive session"
fields = ["dsn", "user", "verbose"]
required = ["dsn"]
[[commands.task]]
id = "batch-csv"
label = "Batch query to delimited text"
set = { batch = [true], delimiter = [","], column_names = [true] }
fields = ["dsn", "user", "batch", "delimiter", "column_names", "quote"]
required = ["dsn"]
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["dsn", "user", "batch", "delimiter", "column_names"]
[[commands.group]]
id = "advanced"
label = "Advanced"
fields = ["html", "quote", "verbose"]