From 028d32420d226127d9a683664c744300de9c9891 Mon Sep 17 00:00:00 2001 From: "claude@clouddev1" Date: Mon, 15 Jun 2026 21:56:20 +0000 Subject: [PATCH] docs(website): hint feature docs + cast (content for c84a640) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Completes the preceding empty-rename commit: the getting-help "Hints" section — F1 for a tier-3 teaching hint on the live input, `hint` to explain the most recent error — with the real rendered block and a cast showing both (the live-input hint via the demo-mode Ctrl-G→[F1] alias, since autocast can't send F1, then `hint` on an error). the-assistive-editor points at F1; CtrlG added to the cast generator's key map. --- website/casts-src/casts.mjs | 27 ++ website/casts-src/generate.mjs | 5 + website/public/casts/hint.cast | 266 ++++++++++++++++++ .../using-the-playground/getting-help.mdx | 32 +++ .../the-assistive-editor.mdx | 4 + 5 files changed, 334 insertions(+) create mode 100644 website/public/casts/hint.cast diff --git a/website/casts-src/casts.mjs b/website/casts-src/casts.mjs index 86c53f2..e166e3e 100644 --- a/website/casts-src/casts.mjs +++ b/website/casts-src/casts.mjs @@ -266,6 +266,33 @@ export const casts = [ { key: 'CtrlC' }, // quit invisibly (Ctrl-C) — cast ends on the last content frame ], }, + { + name: 'hint', + title: 'Ask for a hint — on the command you are typing, or on the last error', + width: 90, + // Taller: the tier-3 hint blocks (What / Example / Concept) plus the command + // echoes need the room. The live-input hint is opened with Ctrl-G, which in + // --demo mode aliases F1 and badges AS [F1] (ADR-0047 Amendment 1) — autocast + // can't send F1 (an escape sequence), so this control byte stands in for it. + height: 30, + typeSpeed: '45ms', + steps: [ + { wait: 1000 }, + { type: 'create table customers with pk id(serial)', after: 650 }, + { type: 'add column to customers: email (text)', after: 850 }, + // Live-input hint: type a command but DON'T submit, then Ctrl-G (badged + // [F1]) opens a teaching hint for the command being built. + { type: "insert into customers (email) values ('ada@example.io')", enter: false, after: 1500 }, + { key: 'CtrlG', after: 3400 }, // [F1] badge + the insert hint block — hold to read + { key: 'Enter', after: 2000 }, // the buffer is intact → submit the insert + // Error-recovery hint: a command that fails, then `hint` explains it. + { type: 'show data orders', after: 2200 }, // no such table → friendly error + { type: 'hint', enter: false, after: 1200 }, + { key: 'Enter', after: 3400 }, // the error hint block — hold to read + { caption: 'A hint for what you are typing, or for the last error.', after: 3200 }, + { key: 'CtrlC' }, // quit invisibly (Ctrl-C) — cast ends on the last content frame + ], + }, { name: 'quickstart', title: 'RDBMS Playground — first table to first query', diff --git a/website/casts-src/generate.mjs b/website/casts-src/generate.mjs index b88273c..e038bbb 100644 --- a/website/casts-src/generate.mjs +++ b/website/casts-src/generate.mjs @@ -49,6 +49,11 @@ const NAMED_KEYS = { CtrlO: '^O', // Esc leaves navigation mode directly (back to the input field). Esc: '^[', + // Ctrl-G: in demo mode the app aliases this to F1 (the contextual-hint key, + // ADR-0053) and badges it AS [F1] (ADR-0047 Amendment 1). autocast can't emit + // F1 (an escape sequence), but it can send this single control byte — so a + // cast can show the live-input hint exactly as a real F1 press would. + CtrlG: '^G', }; /** Build the autocast `keys:` list (one entry per line) for a cast's steps. */ diff --git a/website/public/casts/hint.cast b/website/public/casts/hint.cast new file mode 100644 index 0000000..69cedcb --- /dev/null +++ b/website/public/casts/hint.cast @@ -0,0 +1,266 @@ +{"version":2,"width":90,"height":30,"timestamp":1781560029,"title":"Ask for a hint — on the command you are typing, or on the last error","env":{"TERM":"tmux-256color","SHELL":"/usr/bin/bash"}} +[0,"o","\u001b[?1049h"] +[0.005436,"o","\u001b[1;1H\u001b[38;2;74;82;101;48;2;24;27;34m╭\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m Output \u001b[22m\u001b[38;2;74;82;101;48;2;24;27;34m────────────────────────────────────────────────────────────────────────────────╮\u001b[2;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[3;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[4;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[5;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[6;"] +[0.005507,"o","1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[7;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[8;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[9;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[10;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[11;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[12;1H│\u001b[38;2;230;230;230;48;2;24;27;34"] +[0.005586,"o","m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[13;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[14;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[15;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[16;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[17;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[18;1H│\u001b[38;2;230;230;230;48;2;24;27;34m "] +[0.005649,"o"," \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[19;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[20;1H│\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[21;1H╰────────────────────────────────────────────────────────────────────────────────────────╯\u001b[22;1H╭ \u001b[1m\u001b[38;2;110;196;255;48;2;24;27;34mSIMPLE\u001b[22m\u001b[38;2;74;82;101;48;2;24;27;34m ───────────────────────────────────────────────────────────────────────────────"] +[0.005718,"o","─╮\u001b[23;1H│\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[24;1H╰────────────────────────────────────────────────────────────────────────────────────────╯\u001b[25;1H╭\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m Hint \u001b[22m\u001b[38;2;74;82;101;48;2;24;27;34m──────────────────────────────────────────────────────────────────────────────────╮\u001b[26;1H│\u001b[38;2;139;144;154;48;2;24;27;34mType a command — press Tab for options, `help` for a list · `mode advanced` for SQL\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[27;1H│\u001b[38;2;230;230;230"] +[0.00577,"o",";48;2;24;27;34m \u001b[38;2;74;82;101;48;2;24;27;34m│\u001b[28;1H╰────────────────────────────────────────────────────────────────────────────────────────╯\u001b[29;1H\u001b[38;2;139;144;154;48;2;24;27;34mProject: \u001b[1m[TEMP] \u001b[38;2;230;230;230;48;2;24;27;34mSilver Swan Garden\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m complete · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m run \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[0.00767,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[0.009524,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[0.01138,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.050115,"o","\u001b[23;2H\u001b[38;2;255;107;107;48;2;24;27;34mc\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mcopy\u001b[26;7Hchange\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcreate\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[30;1H\u001b[1mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEsc\u001b[30;17H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mclear \u001b[30;24H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-A/E\u001b[30;36H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mhome/end ·\u001b[30;48H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-W\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m del\u001b[30;60Hword · \u001b[30;69H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;75H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.095762,"o","\u001b[23;3H\u001b[38;2;255;107;107;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;3H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mreate\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.139738,"o","\u001b[23;4H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.187951,"o","\u001b[23;5H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.232555,"o","\u001b[23;6H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.277122,"o","\u001b[23;2H\u001b[38;2;199;146;234;48;2;24;27;34mcreate\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.319056,"o","\u001b[23;8H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;110;196;255;48;2;24;27;34mtable\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mm:n\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.364563,"o","\u001b[23;9H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.409498,"o","\u001b[23;10H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.454144,"o","\u001b[23;11H\u001b[38;2;255;107;107;48;2;24;27;34mb\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.498967,"o","\u001b[23;12H\u001b[38;2;255;107;107;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.544166,"o","\u001b[23;9H\u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.589229,"o","\u001b[23;14H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mType a name\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.635413,"o","\u001b[23;15H\u001b[38;2;86;182;194;48;2;24;27;34mc\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.679466,"o","\u001b[23;16H\u001b[38;2;86;182;194;48;2;24;27;34mu\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.725226,"o","\u001b[23;17H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.770016,"o","\u001b[23;18H\u001b[38;2;86;182;194;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.81497,"o","\u001b[23;19H\u001b[38;2;86;182;194;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.860153,"o","\u001b[23;20H\u001b[38;2;86;182;194;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.904995,"o","\u001b[23;21H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.949717,"o","\u001b[23;22H\u001b[38;2;86;182;194;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[1.994356,"o","\u001b[23;23H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.039827,"o","\u001b[23;24H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mwith\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.08452,"o","\u001b[23;25H\u001b[38;2;255;107;107;48;2;24;27;34mw\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.129478,"o","\u001b[23;26H\u001b[38;2;255;107;107;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.174537,"o","\u001b[23;27H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.21988,"o","\u001b[23;25H\u001b[38;2;199;146;234;48;2;24;27;34mwith\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.264861,"o","\u001b[23;29H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mpk\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.310281,"o","\u001b[23;30H\u001b[38;2;255;107;107;48;2;24;27;34mp\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.355032,"o","\u001b[23;30H\u001b[38;2;199;146;234;48;2;24;27;34mpk\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mSubmit with Enter\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.399801,"o","\u001b[23;32H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.445291,"o","\u001b[23;33H\u001b[38;2;86;182;194;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mNext: `(`\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.490584,"o","\u001b[23;34H\u001b[38;2;86;182;194;48;2;24;27;34md\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.535456,"o","\u001b[23;35H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mint\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mreal\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdecimal\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mbool\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdate\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdatetime\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mblob\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mserial\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mshortid\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.579675,"o","\u001b[23;36H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34ms\u001b[26;4Hrial\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mshortid\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.624689,"o","\u001b[23;37H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;8H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.66975,"o","\u001b[23;38H\u001b[38;2;86;182;194;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.714876,"o","\u001b[23;39H\u001b[38;2;86;182;194;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.760097,"o","\u001b[23;40H\u001b[38;2;86;182;194;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.804417,"o","\u001b[23;36H\u001b[38;2;240;143;192;48;2;24;27;34mserial\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.850138,"o","\u001b[23;42H\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mnot\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34munique\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdefault\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcheck\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.895217,"o","\u001b[2;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;230;230;230;48;2;24;27;34mrunning:\u001b[2;20H\u001b[38;2;199;146;234;48;2;24;27;34mcreate\u001b[2;27Htable\u001b[2;33H\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[2;43H\u001b[38;2;199;146;234;48;2;24;27;34mwith\u001b[2;48Hpk\u001b[2;51H\u001b[38;2;86;182;194;48;2;24;27;34mid\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240;143;192;48;2;24;27;34mserial\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[17;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[18;80H [ENTER] \u001b[19;80H \u001b[23;2H\u001b[22m\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[23;9H \u001b[23;15H \u001b[23;25H \u001b[23;30H \u001b[23;33H \u001b[26;2H\u001b[38;2;139;144;154;48;2;24;27;34mType a command — press Tab for options, `help` for a list · `mode advanced` for SQL\u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar \u001b[30;17H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[30;24H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcomplete ·\u001b[30;36H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history \u001b[30;48H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint \u001b[30;60H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;69H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun \u001b[30;75H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.90989,"o","\u001b[2;11H\u001b[38;2;199;146;234;48;2;24;27;34mcreate\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtabl\u001b[2;23H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mwith\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mpk\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mid\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240;143;192;48;2;24;27;34mserial\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[3;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34mcustomers\u001b[4;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m┌──────┬────────┬─────────────┐\u001b[5;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│\u001b[5;13HName\u001b[5;18H│\u001b[5;20HType\u001b[5;27H│\u001b[5;29HConstraints\u001b[5;41H│\u001b[6;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m├──────┼────────┼─────────────┤\u001b[7;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│\u001b[7;13Hid\u001b[7;18H│\u001b[7;20Hserial\u001b[7;27H│\u001b[7;29HPK\u001b[7;41H│\u001b[8;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m└──────┴────────┴─────────────┘\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.913423,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.916576,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[2.919779,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.638412,"o","\u001b[23;2H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[30;1H\u001b[1mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEsc\u001b[30;17H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mclear \u001b[30;24H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-A/E\u001b[30;36H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mhome/end ·\u001b[30;48H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-W\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m del\u001b[30;60Hword · \u001b[30;69H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;75H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.680457,"o","\u001b[23;3H\u001b[38;2;255;107;107;48;2;24;27;34md\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.725123,"o","\u001b[23;2H\u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.770129,"o","\u001b[23;5H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mcolumn\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mindex\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mconstraint\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34m1:n\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.815282,"o","\u001b[23;6H\u001b[38;2;255;107;107;48;2;24;27;34mc\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;9H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mconstrai\u001b[26;18Ht\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.860531,"o","\u001b[23;7H\u001b[38;2;255;107;107;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.905432,"o","\u001b[23;8H\u001b[38;2;255;107;107;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;8H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.949874,"o","\u001b[23;9H\u001b[38;2;255;107;107;48;2;24;27;34mu\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[3.994976,"o","\u001b[23;10H\u001b[38;2;255;107;107;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.040146,"o","\u001b[23;6H\u001b[38;2;199;146;234;48;2;24;27;34mcolumn\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.085226,"o","\u001b[23;12H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.129419,"o","\u001b[23;13H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.175328,"o","\u001b[23;14H\u001b[38;2;255;107;107;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;4H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.220056,"o","\u001b[23;13H\u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.265368,"o","\u001b[23;16H\u001b[38;2;86;182;194;48;2;24;27;34mc\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;11H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.310088,"o","\u001b[23;17H\u001b[38;2;86;182;194;48;2;24;27;34mu\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.354988,"o","\u001b[23;18H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.396851,"o","\u001b[17;80H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[18;80H \u001b[19;80H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.39992,"o","\u001b[23;19H\u001b[38;2;86;182;194;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.445105,"o","\u001b[23;20H\u001b[38;2;86;182;194;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.490451,"o","\u001b[23;21H\u001b[38;2;86;182;194;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.53525,"o","\u001b[23;22H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.580001,"o","\u001b[23;23H\u001b[38;2;86;182;194;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.625222,"o","\u001b[23;24H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.670078,"o","\u001b[23;25H\u001b[38;2;139;144;154;48;2;24;27;34m:\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mType a name, then `(`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.715323,"o","\u001b[23;26H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.760169,"o","\u001b[23;27H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.805437,"o","\u001b[23;28H\u001b[38;2;86;182;194;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.851442,"o","\u001b[23;29H\u001b[38;2;86;182;194;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.895341,"o","\u001b[23;30H\u001b[38;2;86;182;194;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.94064,"o","\u001b[23;31H\u001b[38;2;86;182;194;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[4.985237,"o","\u001b[23;32H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.030457,"o","\u001b[23;33H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mint\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mreal\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdecimal\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mbool\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdate\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdatetime\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mblob\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mserial\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mshortid\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.075631,"o","\u001b[23;34H\u001b[38;2;86;182;194;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;6H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.120693,"o","\u001b[23;35H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.165561,"o","\u001b[23;36H\u001b[38;2;86;182;194;48;2;24;27;34mx\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.210377,"o","\u001b[23;34H\u001b[38;2;240;143;192;48;2;24;27;34mtext\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.254478,"o","\u001b[23;38H\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mnot\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34munique\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdefault\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcheck\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.301152,"o","\u001b[9;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;230;230;230;48;2;24;27;34mrunning:\u001b[9;20H\u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[9;24Hcolumn\u001b[9;31Hto\u001b[9;34H\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m:\u001b[9;45H\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[9;51H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240;143;192;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[17;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[18;80H [ENTER] \u001b[19;80H \u001b[23;2H\u001b[22m\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[23;6H \u001b[23;13H \u001b[23;16H \u001b[23;27H \u001b[23;33H \u001b[26;2H\u001b[38;2;139;144;154;48;2;24;27;34mType a command — press Tab for options, `help` for a list · `mode advanced` for SQL\u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar \u001b[30;17H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[30;24H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcomplete ·\u001b[30;36H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history \u001b[30;48H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint \u001b[30;60H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;69H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun \u001b[30;75H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.314955,"o","\u001b[9;11H\u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcolumn\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m:\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240;143;192;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[9;51H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[10;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34mcustomers\u001b[11;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m┌───────┬────────┬─────────────┐\u001b[12;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│\u001b[12;13HName\u001b[12;19H│\u001b[12;21HType\u001b[12;28H│\u001b[12;30HConstraints\u001b[12;42H│\u001b[13;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m├───────┼────────┼─────────────┤\u001b[14;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│\u001b[14;13Hid\u001b[14;19H│\u001b[14;21Hserial\u001b[14;28H│\u001b[14;30HPK\u001b[14;42H│\u001b[15;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│\u001b[15;13Hemail\u001b[15;19H│\u001b[15;21Htext\u001b[15;28H│\u001b[15;42H│\u001b[16;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m└───────┴────────┴─────────────┘\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.318165,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.321577,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[5.325118,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.240697,"o","\u001b[23;2H\u001b[38;2;255;107;107;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mimport\u001b[26;9Hinsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[30;1H\u001b[1mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEsc\u001b[30;17H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mclear \u001b[30;24H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-A/E\u001b[30;36H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mhome/end ·\u001b[30;48H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-W\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m del\u001b[30;60Hword · \u001b[30;69H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;75H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.285001,"o","\u001b[23;3H\u001b[38;2;255;107;107;48;2;24;27;34mn\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;3H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mnse\u001b[26;8H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.330232,"o","\u001b[23;4H\u001b[38;2;255;107;107;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.37609,"o","\u001b[23;5H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.421296,"o","\u001b[23;6H\u001b[38;2;255;107;107;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.466625,"o","\u001b[23;2H\u001b[38;2;199;146;234;48;2;24;27;34minsert\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.509802,"o","\u001b[23;8H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;4H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.555423,"o","\u001b[23;9H\u001b[38;2;255;107;107;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.601441,"o","\u001b[23;10H\u001b[38;2;255;107;107;48;2;24;27;34mn\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.644904,"o","\u001b[23;11H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.68981,"o","\u001b[23;9H\u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.736675,"o","\u001b[23;13H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.781752,"o","\u001b[23;14H\u001b[38;2;86;182;194;48;2;24;27;34mc\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.80281,"o","\u001b[17;80H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[18;80H \u001b[19;80H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.825876,"o","\u001b[23;15H\u001b[38;2;86;182;194;48;2;24;27;34mu\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.871186,"o","\u001b[23;16H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.915994,"o","\u001b[23;17H\u001b[38;2;86;182;194;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[6.960495,"o","\u001b[23;18H\u001b[38;2;86;182;194;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.005152,"o","\u001b[23;19H\u001b[38;2;86;182;194;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.050406,"o","\u001b[23;20H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.094804,"o","\u001b[23;21H\u001b[38;2;86;182;194;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.140942,"o","\u001b[23;22H\u001b[38;2;86;182;194;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.186047,"o","\u001b[23;23H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[38;2;139;144;154;48;2;24;27;34m (\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.230258,"o","\u001b[23;24H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mid\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.275576,"o","\u001b[23;25H\u001b[38;2;86;182;194;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;7H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.320921,"o","\u001b[23;26H\u001b[38;2;86;182;194;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.365735,"o","\u001b[23;27H\u001b[38;2;86;182;194;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.410689,"o","\u001b[23;28H\u001b[38;2;86;182;194;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.456376,"o","\u001b[23;29H\u001b[38;2;86;182;194;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.500623,"o","\u001b[23;30H\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.54594,"o","\u001b[23;31H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.591365,"o","\u001b[23;32H\u001b[38;2;255;107;107;48;2;24;27;34mv\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.636232,"o","\u001b[23;33H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.681064,"o","\u001b[23;34H\u001b[38;2;255;107;107;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.726238,"o","\u001b[23;35H\u001b[38;2;255;107;107;48;2;24;27;34mu\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.771411,"o","\u001b[23;36H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.816057,"o","\u001b[23;32H\u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.861587,"o","\u001b[23;38H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.905818,"o","\u001b[23;39H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mfor `email`: Type a quoted string (e.g. 'Alice') or null\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.951723,"o","\u001b[23;40H\u001b[38;2;255;107;107;48;2;24;27;34m'\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[7.996389,"o","\u001b[23;41H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mafter `insert into customer\u001b[26;30H (email) values (`, expected string literal or `null` —\u001b[27;2Husage: insert into [([, ...])] [values] ([, ...])\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.041345,"o","\u001b[23;42H\u001b[38;2;255;107;107;48;2;24;27;34md\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.085886,"o","\u001b[23;43H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.130781,"o","\u001b[23;44H\u001b[38;2;255;107;107;48;2;24;27;34m@\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mfor `email`: Type a quoted \u001b[26;30Htring (e.g. 'Alice') or null\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27;2H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.176894,"o","\u001b[23;45H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mafter `insert into customer\u001b[26;30H (email) values (`, expected string literal or `null` —\u001b[27;2Husage: insert into
[([, ...])] [values] ([, ...])\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.221339,"o","\u001b[23;46H\u001b[38;2;255;107;107;48;2;24;27;34mx\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.26623,"o","\u001b[23;47H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.312099,"o","\u001b[23;48H\u001b[38;2;255;107;107;48;2;24;27;34mm\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.355389,"o","\u001b[23;49H\u001b[38;2;255;107;107;48;2;24;27;34mp\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.402197,"o","\u001b[23;50H\u001b[38;2;255;107;107;48;2;24;27;34ml\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.447357,"o","\u001b[23;51H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.491809,"o","\u001b[23;52H\u001b[38;2;255;107;107;48;2;24;27;34m.\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mfor `email`: Type a quoted \u001b[26;30Htring (e.g. 'Alice') or null\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27;2H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.537437,"o","\u001b[23;53H\u001b[38;2;255;107;107;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mafter `insert into customer\u001b[26;30H (email) values (`, expected string literal or `null` —\u001b[27;2Husage: insert into
[([, ...])] [values] ([, ...])\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.582546,"o","\u001b[23;54H\u001b[38;2;255;107;107;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.626713,"o","\u001b[23;40H\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mNext:\u001b[26;9H)`\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27;2H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[8.672507,"o","\u001b[23;56H\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mSubmit with Enter\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[9.676588,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[10.261892,"o","\u001b[2;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34mcustomers \u001b[2;24H \u001b[2;34H \u001b[2;39H \u001b[2;42H \u001b[3;11H┌──────┬────────┬─────────────┐\u001b[4;11H│ Name │ Type │ Constraints │\u001b[5;11H├──────┼────────┼─────────────┤\u001b[6;11H│ id │ serial │ PK │\u001b[7;11H└──────┴────────┴─────────────┘\u001b[8;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcolumn\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m:\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240"] +[10.261902,"o",";143;192;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[9;2H[system] \u001b[38;2;230;230;230;48;2;24;27;34mcustomers \u001b[9;22H \u001b[9;25H \u001b[9;36H \u001b[9;42H \u001b[10;11H┌───────┬────────┬─────────────┐\u001b[11;11H│ Name │ Type │ Constraints │\u001b[12;11H├───────┼────────┼─────────────┤\u001b[13;11H│ id │ serial │ PK │\u001b[14;13Hemail\u001b[14;21Ht\u001b[14;23Hxt \u001b[14;30H \u001b[15;11H└───────┴────────┴─────────────┘\u001b[16;11HHint \u001b[17;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[17;13H\u001b[38;2;230;230;230;48;2;24;27;34mWhat:\u001b[17;22HAdd\u001b[17;26Hone\u001b[17;30Hor\u001b[17;33Hmore\u001b[17;38Hrows\u001b[17;43Hto\u001b[17;46Ha\u001b[17;48Htable.\u001b[17;83H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[18;2H\u001b[22m\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[18;13H\u001b[38;2;230;230;230;48;2;24;27;34mEx"] +[10.261979,"o","ample:\u001b[18;22Hinsert\u001b[18;29Hinto\u001b[18;34HCustomers\u001b[18;44Hvalues\u001b[18;51H('Ann',\u001b[18;59H'ann@example.io')\u001b[18;83H\u001b[1m\u001b[38;5;0;48;2;255;215;0m [F1] \u001b[19;2H\u001b[22m\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in or\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[20;2H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mColumns typed `serial`/`shortid` fill themselves — leave them out.\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[11.262829,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[11.763242,"o","\u001b[17;83H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[18;83H \u001b[19;83H\u001b[38;2;139;144;154;48;2;24;27;34mder.\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[13.751041,"o","\u001b[2;11H\u001b[38;2;230;230;230;48;2;24;27;34m┌──────┬────────┬─────────────┐\u001b[3;11H│ Name │ Type │ Constraints │\u001b[4;11H├──────┼────────┼─────────────┤\u001b[5;11H│ id │ serial │ PK │\u001b[6;11H└──────┴────────┴─────────────┘\u001b[7;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34madd\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mcolumn\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;139;144;154;48;2;24;27;34m:\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;240;143;192;48;2;24;27;34mtext\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[8;2H[system] \u001b["] +[13.751122,"o","38;2;230;230;230;48;2;24;27;34mcustomers \u001b[8;22H \u001b[8;25H \u001b[8;36H \u001b[8;42H \u001b[9;11H┌───────┬────────┬─────────────┐\u001b[10;11H│ Name │ Type │ Constraints │\u001b[11;11H├───────┼────────┼─────────────┤\u001b[12;11H│ id │ serial │ PK │\u001b[13;13Hemail\u001b[13;21Ht\u001b[13;23Hxt \u001b[13;30H \u001b[14;11H└───────┴────────┴─────────────┘\u001b[15;11HHint \u001b[16;11H What:\u001b[16;22HAdd\u001b[16;26Hone\u001b[16;30Hor\u001b[16;33Hmore\u001b[16;38Hrows\u001b[16;43Hto\u001b[16;46Ha\u001b[16;48Htable.\u001b[17;13HEx\u001b[17;16Hmple:\u001b[17;22Hinsert into Customers values ('Ann',\u001b[17;59H'ann@example.io')\u001b[17;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[18;11H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in\u001b[1m\u001b[38;5;0;48;2;255;215;0m [ENTER] \u001b[19;2H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mC"] +[13.751199,"o","olumns typed `serial`/`shortid`\u001b[19;35Hfill themselves — leav\u001b[19;58H them out.\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[20;2H\u001b[22m\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;230;230;230;48;2;24;27;34mrunning: \u001b[38;2;199;146;234;48;2;24;27;34minsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[23;2H\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[23;9H \u001b[23;14H \u001b[23;24H \u001b[23;32H \u001b[23;39H \u001b[26;2H\u001b[38;2;139;144;154;48;2;24;27;34mType a\u001b[26;9Hcommand — press Tab for"] +[13.751244,"o"," options, `help` for a list · `mode advanced` for SQL\u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar \u001b[30;17H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[30;24H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcomplete ·\u001b[30;36H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history \u001b[30;48H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint \u001b[30;60H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;69H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun \u001b[30;75H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[13.765039,"o","\u001b[2;11H\u001b[38;2;230;230;230;48;2;24;27;34mcustomers \u001b[3;11H┌───────┬────────┬─────────────┐\u001b[4;11H│ Name │ Type │ Constraints │\u001b[5;11H├───────┼────────┼─────────────┤\u001b[6;11H│ id │ serial │ PK │\u001b[7;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│ email │ text │ \u001b[7;36H \u001b[7;42H│ \u001b[8;11H└───────┴────────┴─────────────┘\u001b[9;11HHint \u001b[10;11H \u001b[10;13HWhat:\u001b[10;19H \u001b[10;21H Add\u001b[10;26Hone\u001b[10;30Hor mo\u001b[10;36He rows to\u001b[10;46Ha\u001b[10;48Htable.\u001b[11;11H Example: insert into Customers\u001b[11;44Hvalues\u001b[11;51H('Ann',\u001b[11;59H'ann@example.io')\u001b[12;11H\u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in order.\u001b[13;2HColumns typed `serial`/`shortid` fill themselves — leave them out.\u001b[14;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34minsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[14;48H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[15;11H\u001b[38;2;230;230;230;48;2;24;27;34m 1 row(s)\u001b[15;22Hinserted\u001b[16;11H┌────┬────────────────┐ \u001b[16;38H \u001b[16;43H \u001b[16;46H \u001b[16;48H \u001b[17;11H│\u001b[17;13Hid │ email \u001b[17;29H │ \u001b[17;44H \u001b[17;51H \u001b[17;59H \u001b[18;11H├────┼────────────────┤ \u001b[19;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│ 1 │ ada@example.io │ \u001b[20;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m└────┴────────────────┘ \u001b[20;42H \u001b[20;50H \u001b[20;57H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[13.769099,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[13.772883,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[13.776789,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[14.778685,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[15.252578,"o","\u001b[17;80H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[18;80H \u001b[19;80H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[15.842711,"o","\u001b[23;2H\u001b[38;2;255;107;107;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34msave\u001b[26;7Hshow\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mseed\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[30;1H\u001b[1mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEsc\u001b[30;17H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mclear \u001b[30;24H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-A/E\u001b[30;36H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mhome/end ·\u001b[30;48H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-W\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m del\u001b[30;60Hword · \u001b[30;69H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;75H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[15.88676,"o","\u001b[23;3H\u001b[38;2;255;107;107;48;2;24;27;34mh\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;3H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mhow\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[15.931732,"o","\u001b[23;4H\u001b[38;2;255;107;107;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[15.976224,"o","\u001b[23;2H\u001b[38;2;199;146;234;48;2;24;27;34mshow\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.021132,"o","\u001b[23;6H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mdata\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtable\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mtables\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mrelationships\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mindexes\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mrelationship\u001b[38;2;139;144;154;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mindex\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.068889,"o","\u001b[23;7H\u001b[38;2;255;107;107;48;2;24;27;34md\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;6H\u001b[27m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.116097,"o","\u001b[23;8H\u001b[38;2;255;107;107;48;2;24;27;34ma\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.157444,"o","\u001b[23;9H\u001b[38;2;255;107;107;48;2;24;27;34mt\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.20403,"o","\u001b[23;7H\u001b[38;2;199;146;234;48;2;24;27;34mdata\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.246041,"o","\u001b[23;11H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[7m \u001b[26;2H\u001b[27m\u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.291128,"o","\u001b[23;12H\u001b[38;2;255;107;107;48;2;24;27;34mo\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mno such table: `o`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.338181,"o","\u001b[23;13H\u001b[38;2;255;107;107;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;19H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mr`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.383795,"o","\u001b[23;14H\u001b[38;2;255;107;107;48;2;24;27;34md\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;20H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34md`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.426088,"o","\u001b[23;15H\u001b[38;2;255;107;107;48;2;24;27;34me\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;21H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34me`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.47348,"o","\u001b[23;16H\u001b[38;2;255;107;107;48;2;24;27;34mr\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;22H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mr`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.515858,"o","\u001b[23;17H\u001b[38;2;255;107;107;48;2;24;27;34ms\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;23H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34ms`\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.561517,"o","\u001b[2;11H\u001b[38;2;230;230;230;48;2;24;27;34m┌───────┬────────┬─────────────┐\u001b[3;11H│ Name │ Type │ Constraints │\u001b[4;11H├───────┼────────┼─────────────┤\u001b[5;11H│ id │ serial │ PK │\u001b[6;13Hemail\u001b[6;21Ht\u001b[6;23Hxt \u001b[6;30H \u001b[7;11H└───────┴────────┴─────────────┘\u001b[8;11HHint \u001b[9;11H What:\u001b[9;22HAdd\u001b[9;26Hone\u001b[9;30Hor\u001b[9;33Hmore\u001b[9;38Hrows\u001b[9;43Hto\u001b[9;46Ha\u001b[9;48Htable.\u001b[10;13HEx\u001b[10;16Hmple:\u001b[10;22Hinsert into Customers values ('Ann',\u001b[10;59H'ann@example.io')\u001b[11;11H\u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in order.\u001b[12;2HColumns typed `serial`/`shortid`\u001b[12;35Hfill themselves — leav\u001b[12;58H them out.\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[13;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;"] +[16.561532,"o","234;48;2;24;27;34minsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[14;2H[system] \u001b[38;2;230;230;230;48;2;24;27;34m 1 row(s) inserted \u001b[14;33H \u001b[14;41H \u001b[14;48H \u001b[15;11H┌────┬────────────────┐\u001b[16;11H│ id │ email │\u001b[17;11H├────┼────────────────┤\u001b[17;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[18;11H\u001b[22m\u001b[38;2;230;230;230;48;2;24;27;34m│ 1 │ ada@example.io │\u001b[18;80H\u001b[1m\u001b["] +[16.561628,"o","38;5;0;48;2;255;215;0m [ENTER] \u001b[19;11H\u001b[22m\u001b[38;2;230;230;230;48;2;24;27;34m└────┴────────────────┘\u001b[19;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[20;2H\u001b[22m\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;230;230;230;48;2;24;27;34mrunning: \u001b[38;2;199;146;234;48;2;24;27;34mshow\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdata\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34morders\u001b[23;2H\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[23;7H \u001b[23;12H \u001b[26;2H\u001b[38;2;139;144;154;48;2;24;27;34mType a command\u001b[26;17H— pr\u001b[26;22Hs\u001b[26;24H Tab for options, `help` for a list · `mode advanced` for SQL\u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar \u001b[30;17H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[30;24H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcomplete ·\u001b[30;36H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history \u001b[30;48H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint \u001b[30;60H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;69H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun \u001b[30;75H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.567469,"o","\u001b[2;11H\u001b[38;2;230;230;230;48;2;24;27;34m│ Name │ Type │ Constraints │\u001b[3;11H├───────┼────────┼─────────────┤\u001b[4;11H│ id │ serial │ PK │\u001b[5;13Hemail\u001b[5;21Ht\u001b[5;23Hxt \u001b[5;30H \u001b[6;11H└───────┴────────┴─────────────┘\u001b[7;11HHint \u001b[8;11H What:\u001b[8;22HAdd\u001b[8;26Hone\u001b[8;30Hor\u001b[8;33Hmore\u001b[8;38Hrows\u001b[8;43Hto\u001b[8;46Ha\u001b[8;48Htable.\u001b[9;13HEx\u001b[9;16Hmple:\u001b[9;22Hinsert into Customers values ('Ann',\u001b[9;59H'ann@example.io')\u001b[10;11H\u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in order.\u001b[11;2HColumns typed `serial`/`shortid`\u001b[11;35Hfill themselves — leav\u001b[11;58H them out.\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[12;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34minsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[13;2H[system] \u001b[38;2;230;230;230;48;2;24;27;34m 1 row(s) inserted \u001b[13;33H \u001b[13;41H \u001b[13;48H \u001b[14;11H┌────┬────────────────┐\u001b[15;11H│ id │ email │\u001b[16;11H├────┼────────────────┤\u001b[17;11H│ 1 │ ada@example.io │\u001b[18;11H└────┴────────────────┘\u001b[19;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34mshow\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;"] +[16.567539,"o","199;146;234;48;2;24;27;34mdata\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34morders\u001b[38;2;255;107;107;48;2;24;27;34m ✗\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[20;2H\u001b[38;2;255;107;107;48;2;24;27;34m[error] \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mno such table: `orders`\u001b[22m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.571392,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.575374,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[16.579171,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[17.58396,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[18.061387,"o","\u001b[17;80H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[18;80H \u001b[19;80H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[18.850873,"o","\u001b[23;2H\u001b[38;2;255;107;107;48;2;24;27;34mh\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mhelp\u001b[26;7Hhint\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[30;1H\u001b[1mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint · \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEsc\u001b[30;17H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mclear \u001b[30;24H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-A/E\u001b[30;36H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mhome/end ·\u001b[30;48H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-W\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m del\u001b[30;60Hword · \u001b[30;69H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;75H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[18.896241,"o","\u001b[23;3H\u001b[38;2;255;107;107;48;2;24;27;34mi\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;3H\u001b[27m\u001b[38;2;199;146;234;48;2;24;27;34mint\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[18.941168,"o","\u001b[23;4H\u001b[38;2;255;107;107;48;2;24;27;34mn\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[18.987051,"o","\u001b[23;2H\u001b[38;2;199;146;234;48;2;24;27;34mhint\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[26;2H\u001b[27m\u001b[38;2;139;144;154;48;2;24;27;34mSubmit with Enter\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[19.988385,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[20.276796,"o","\u001b[2;11H\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[2;13HWhat:\u001b[2;19H \u001b[2;21H Add\u001b[2;26Hone\u001b[2;30Hor mo\u001b[2;36He rows to\u001b[2;46Ha\u001b[2;48Htable.\u001b[3;11H Example: insert into Customers\u001b[3;44Hvalues\u001b[3;51H('Ann',\u001b[3;59H'ann@example.io')\u001b[4;11H\u001b[38;2;139;144;154;48;2;24;27;34m Concept: A row is one record; each value lines up with a column, in order.\u001b[5;2HColumns typed `serial`/`shortid` fill themselves — leave them out.\u001b[6;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34minsert\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34minto\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34mcustomers\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;86;182;194;48;2;24;27;34memail\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mvalues\u001b[6;48H\u001b[38;2;139;144;154;48;2;24;27;34m(\u001b[38;2;195;232;141;48;2;24;27;34m'ada@example.io'\u001b[38;2;139;144;154;48;2;24;27;34m)\u001b[38;2;159;216;145;48;2;24;27;34m ✓\u001b[7;11H\u001b[38;2;230;230;230;48;2;24;27;34m 1 row(s)\u001b[7;22Hinserted\u001b[8;11H┌────┬────────────────┐ \u001b[8;38H \u001b[8;43H \u001b[8;46H \u001b[8;48H \u001b[9;11H│\u001b[9;13Hid │ email \u001b[9;29H │ \u001b[9;44H \u001b[9;51H \u001b[9;59H \u001b[10;11H├────┼────────────────┤ \u001b[11;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m│ 1 │ ada@example.io │ \u001b[12;2H\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;230;230;230;48;2;24;27;34m└────┴────────────────┘ \u001b[12;41H \u001b[12;48H \u001b[13;2H\u001b[38;2;110;196;255;48;2;24;27;34m[simple] \u001b[38;2;199;146;234;48;2;24;27;34mshow\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;199;146;234;48;2;24;27;34mdata\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[38;2;86;182;194;48;2;24;27;34morders\u001b[38;2;255;107;107;48;2;24;27;34m "] +[20.276889,"o","✗\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[14;2H\u001b[38;2;255;107;107;48;2;24;27;34m[error] \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mno such table: `orders`\u001b[15;11H\u001b[22mHint\u001b[15;16H \u001b[15;18H \u001b[15;33H \u001b[16;11H What: You named a table\u001b[16;40Hor\u001b[16;43Hcolumn\u001b[16;50Hthat\u001b[16;55Hdoesn't\u001b[16;63Hexist.\u001b[17;11H \u001b[17;13HExample: Check the spelling,\u001b[17;42Hor\u001b[17;45Hrun\u001b[17;49H`show\u001b[17;55Htables`\u001b[17;63H(or\u001b[17;67H`show\u001b[17;73Htable\u001b[17;79H<\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[22m\u001b[38;2;230;230;230;48;2;24;27;34mo\u001b[18;2Hsee what's there. \u001b[18;80H\u001b[1m\u001b[38;5;0;48;2;255;215;0m [ENTER] \u001b[19;2H\u001b[22m\u001b[38;2;159;216;145;48;2;24;27;34m[system] \u001b[38;2;139;144;154;48;2;24;27;34m Concept: A command can only refer to tables and columns that alread\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[20;2H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcreate them first if you need them.\u001b[23;2H\u001b[7m\u001b[38;2;230;230;230;48;2;24;27;34m \u001b[27m \u001b[26;2H\u001b[38;2;139;144;154;48;2;24;27;34mType a\u001b[26;9Hcommand — press Tab for options, `help` for a list · `mode advanced` for SQL\u001b[30;1H\u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mCtrl-O\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m sidebar \u001b[30;17H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mTab\u001b[30;24H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mcomplete ·\u001b[30;36H \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34m↑\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m history \u001b[30;48H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mF1\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34m hint \u001b[30;60H· \u001b[1m\u001b[38;2;230;230;230;48;2;24;27;34mEnter\u001b[30;69H\u001b[22m\u001b[38;2;139;144;154;48;2;24;27;34mrun \u001b[30;75H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[21.278117,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[21.776738,"o","\u001b[17;80H\u001b[38;2;230;230;230;48;2;24;27;34mname>`) t\u001b[18;80H \u001b[19;80H\u001b[38;2;139;144;154;48;2;24;27;34my exist —\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.766847,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.811287,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.856236,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.901839,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.946225,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[23.991293,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.035785,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.081483,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.126166,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.175425,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.216938,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.26229,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.306845,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.350666,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.397489,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.440503,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.486014,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.53138,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.575396,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.622488,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.66692,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.711661,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.755641,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.801415,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.847374,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.89153,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.935807,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[24.9821,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.026402,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.071227,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.116548,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.162063,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.206073,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.251421,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.296326,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.341754,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.386341,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.433142,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.475745,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.521149,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.566207,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.611976,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.656991,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.701191,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.746046,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.791238,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.836516,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.881553,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.925411,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[25.970995,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.016114,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.064189,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.110204,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.153933,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.20009,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[26.241918,"o","\u001b[16;49H\u001b[1m\u001b[38;5;0;48;2;255;215;0m \u001b[17;49H A hint for what you are typing, or for \u001b[18;49H the last error. \u001b[19;49H \u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[27.241895,"o","\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[29.534052,"o","\u001b[16;49H\u001b[38;2;230;230;230;48;2;24;27;34m that doesn't exist. \u001b[17;49H`show tables` (or `show table `) t\u001b[18;49H \u001b[19;49H\u001b[38;2;139;144;154;48;2;24;27;34m tables and columns that already exist —\u001b[39m\u001b[49m\u001b[59m\u001b[0m\u001b[?25l"] +[31.034052,"o",""] diff --git a/website/src/content/docs/using-the-playground/getting-help.mdx b/website/src/content/docs/using-the-playground/getting-help.mdx index d9303da..2c43f9b 100644 --- a/website/src/content/docs/using-the-playground/getting-help.mdx +++ b/website/src/content/docs/using-the-playground/getting-help.mdx @@ -5,6 +5,8 @@ sidebar: order: 8 --- +import Demo from '../../../components/Demo.astro'; + The playground has help built in, so you rarely need to leave it. ```rdbms @@ -23,5 +25,35 @@ help types ``` Shows the type reference on its own. +## Hints — a deeper nudge + +`help` is the reference; **`hint`** is the teaching nudge for what you are doing +*right now*. A hint goes beyond the always-on colour and the ambient +[hint line](/using-the-playground/the-assistive-editor/#hints): it explains what +a command does, shows a worked example, and names the underlying relational +concept. + + + +Press F1 while typing to get a hint for the command you are building: + +``` +Hint + What: Add one or more rows to a table. + Example: insert into Customers values ('Ann', 'ann@example.io') + Concept: A row is one record; each value lines up with a column, in order. Columns typed `serial`/`shortid` fill themselves — leave them out. +``` + +After a command fails, the **`hint`** command explains the most recent error — +what went wrong, an example of the fix, and the concept behind it: + +```rdbms +hint +``` + +A submitted command can't see your half-typed line, which is why the live-input +hint is on F1 while `hint` covers the last error. Both work in simple +and advanced mode. + Outside the app, run `rdbms-playground --help` for the [command-line options](/using-the-playground/command-line-options/). diff --git a/website/src/content/docs/using-the-playground/the-assistive-editor.mdx b/website/src/content/docs/using-the-playground/the-assistive-editor.mdx index 191a454..68c0608 100644 --- a/website/src/content/docs/using-the-playground/the-assistive-editor.mdx +++ b/website/src/content/docs/using-the-playground/the-assistive-editor.mdx @@ -45,6 +45,10 @@ would fit, the type expected at the current position, and help with the most recent error. When the input is empty it reminds you that Tab lists options and `help` lists commands. +For a deeper, teaching-grade hint — what a command does, a worked example, and +the relational concept behind it — press F1 while typing (or run +`hint` after an error). See [Getting help](/using-the-playground/getting-help/). + ## Editing the line Move and edit within the line with the usual keys: /