PDF (US Ltr) - 2.3Mb
PDF (A4) - 2.3Mb
为了帮助将 MySQL Shell 与外部工具集成,您可以在从命令行启动 MySQL Shell 时使用 --json
选项来控制所有 MySQL Shell 输出的 JSON 包装。 --json
选项仅对其指定的 MySQL Shell 会话有效。
指定 --json
、--json=pretty
或 --json=raw
会为该会话启用 JSON 包装。使用 --json=pretty
或不指定任何值时,将生成格式化的 JSON。使用 --json=raw
时,将生成原始 JSON。
启用 JSON 包装后,将忽略在配置文件或命令行(使用 --result-format
选项或其别名之一)中为 resultFormat
MySQL Shell 配置选项指定的任何值。
指定 --json=off
会为该会话禁用 JSON 包装。禁用 JSON 包装或未为会话请求 JSON 包装时,结果集将按照 resultFormat
MySQL Shell 配置选项指定的格式正常输出。
示例 5.7 使用格式化 JSON 包装的 MySQL Shell 输出(--json
或 --json=pretty
)
$> echo "select * from world_x.city where countrycode='AUT'" | mysqlsh --json --sql --uri user@localhost:33060
or
$> echo "select * from world_x.city where countrycode='AUT'" | mysqlsh --json=pretty --sql --uri user@localhost:33060
{
"hasData": true,
"rows": [
{
"ID": 1523,
"Name": "Wien",
"CountryCode": "AUT",
"District": "Wien",
"Info": {
"Population": 1608144
}
},
{
"ID": 1524,
"Name": "Graz",
"CountryCode": "AUT",
"District": "Steiermark",
"Info": {
"Population": 240967
}
},
{
"ID": 1525,
"Name": "Linz",
"CountryCode": "AUT",
"District": "North Austria",
"Info": {
"Population": 188022
}
},
{
"ID": 1526,
"Name": "Salzburg",
"CountryCode": "AUT",
"District": "Salzburg",
"Info": {
"Population": 144247
}
},
{
"ID": 1527,
"Name": "Innsbruck",
"CountryCode": "AUT",
"District": "Tiroli",
"Info": {
"Population": 111752
}
},
{
"ID": 1528,
"Name": "Klagenfurt",
"CountryCode": "AUT",
"District": "Kärnten",
"Info": {
"Population": 91141
}
}
],
"executionTime": "0.0067 sec",
"affectedRowCount": 0,
"affectedItemsCount": 0,
"warningCount": 0,
"warningsCount": 0,
"warnings": [],
"info": "",
"autoIncrementValue": 0
}
示例 5.8 使用原始 JSON 包装的 MySQL Shell 输出(--json=raw
)
$> echo "select * from world_x.city where countrycode='AUT'" | mysqlsh --json=raw --sql --uri user@localhost:33060
{"hasData":true,"rows":[{"ID":1523,"Name":"Wien","CountryCode":"AUT","District":"Wien","Info":{"Population":1608144}},{"ID":1524,"Name":"Graz","CountryCode":"AUT","District":"Steiermark","Info":{"Population":240967}},{"ID":1525,"Name":"Linz","CountryCode":"AUT","District":"North Austria","Info":{"Population":188022}},{"ID":1526,"Name":"Salzburg","CountryCode":"AUT","District":"Salzburg","Info":{"Population":144247}},{"ID":1527,"Name":"Innsbruck","CountryCode":"AUT","District":"Tiroli","Info":{"Population":111752}},{"ID":1528,"Name":"Klagenfurt","CountryCode":"AUT","District":"Kärnten","Info":{"Population":91141}}],"executionTime":"0.0117 sec","affectedRowCount":0,"affectedItemsCount":0,"warningCount":0,"warningsCount":0,"warnings":[],"info":"","autoIncrementValue":0}