generated from btholt/next-course-starter
-
Notifications
You must be signed in to change notification settings - Fork 10
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
0 parents
commit b7f4edb
Showing
85 changed files
with
1,151 additions
and
0 deletions.
There are no files selected for viewing
Empty file.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
<!DOCTYPE html><html><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width"/><link rel="apple-touch-icon" sizes="180x180" href="/images/apple-touch-icon.png"/><link rel="icon" type="image/png" sizes="32x32" href="/images/favicon-32x32.png"/><link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16.png"/><link rel="icon" type="image/png" sizes="16x16" href="/images/favicon-16x16.png"/><link rel="icon" type="image/x-icon" href="/images/favicon.ico"/><title>404: This page could not be found</title><meta name="next-head-count" content="8"/><link data-next-font="size-adjust" rel="preconnect" href="/" crossorigin="anonymous"/><link rel="preload" href="/_next/static/css/8f30e269b0ce4049.css" as="style"/><link rel="stylesheet" href="/_next/static/css/8f30e269b0ce4049.css" data-n-g=""/><noscript data-n-css=""></noscript><script defer="" nomodule="" src="/_next/static/chunks/polyfills-78c92fac7aa8fdd8.js"></script><script src="/_next/static/chunks/webpack-4e7214a60fad8e88.js" defer=""></script><script src="/_next/static/chunks/framework-ecc4130bc7a58a64.js" defer=""></script><script src="/_next/static/chunks/main-be89c515900796e7.js" defer=""></script><script src="/_next/static/chunks/pages/_app-b4481a2be4f0dd1d.js" defer=""></script><script src="/_next/static/chunks/pages/_error-77823ddac6993d35.js" defer=""></script><script src="/_next/static/ukR9Ip1HT6G2xZqt4xzY8/_buildManifest.js" defer=""></script><script src="/_next/static/ukR9Ip1HT6G2xZqt4xzY8/_ssgManifest.js" defer=""></script></head><body><div id="__next"><div class="remix-app"><header class="navbar"><h1 class="navbar-brand"><a href="/">Complete Intro to SQLite</a></h1><div class="navbar-info"><a href="https://frontendmasters.com/courses/sqlite/" class="cta-btn">Watch on Frontend Masters</a></div></header><div class="content-container"><div class="main"><div style="font-family:system-ui,"Segoe UI",Roboto,Helvetica,Arial,sans-serif,"Apple Color Emoji","Segoe UI Emoji";height:100vh;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center"><div style="line-height:48px"><style>body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}</style><h1 class="next-error-h1" style="display:inline-block;margin:0 20px 0 0;padding-right:23px;font-size:24px;font-weight:500;vertical-align:top">404</h1><div style="display:inline-block"><h2 style="font-size:14px;font-weight:400;line-height:28px">This page could not be found<!-- -->.</h2></div></div></div></div></div><script async="" defer="" src="https://a.holt.courses/latest.js"></script><noscript><img src="https://a.holt.courses/noscript.gif" alt="" referrerPolicy="no-referrer-when-downgrade"/></noscript><footer class="footer"><ul class="socials"><li class="social"><a href="https://twitter.com/holtbt"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="40" height="32" viewBox="0 0 40 32"><defs><clipPath id="clip-twitter-social"><rect width="40" height="32"></rect></clipPath></defs><g id="twitter-social" clip-path="url(#clip-twitter-social)"><g id="Group_269" data-name="Group 269" transform="translate(-230.23 -1140.849)"><path id="Path_419" data-name="Path 419" d="M266.12,1148.861v1.035a23.092,23.092,0,0,1-1.507,8.1,24.08,24.08,0,0,1-4.475,7.381,22.175,22.175,0,0,1-7.306,5.4,24.129,24.129,0,0,1-10,2.07,23.7,23.7,0,0,1-6.667-.945,22.83,22.83,0,0,1-5.936-2.655q.959.091,1.963.09a16.518,16.518,0,0,0,5.434-.9,17.111,17.111,0,0,0,4.749-2.52,8.275,8.275,0,0,1-4.749-1.643,7.8,7.8,0,0,1-2.877-3.983,8.268,8.268,0,0,0,1.507.135,8.58,8.58,0,0,0,2.146-.27,8.16,8.16,0,0,1-5.685-4.344,8.326,8.326,0,0,1-.89-3.578v-.135a7.775,7.775,0,0,0,3.744,1.035,8.183,8.183,0,0,1-2.671-2.9,7.817,7.817,0,0,1-.982-3.848,7.948,7.948,0,0,1,1.1-4.05,23.53,23.53,0,0,0,16.895,8.46,9.221,9.221,0,0,1-.183-1.845,7.787,7.787,0,0,1,1.1-4.05,8.216,8.216,0,0,1,2.991-2.948,7.991,7.991,0,0,1,4.087-1.1,8.184,8.184,0,0,1,5.982,2.566,16.087,16.087,0,0,0,5.205-1.98,7.784,7.784,0,0,1-1.393,2.588,8.4,8.4,0,0,1-2.215,1.913,16.856,16.856,0,0,0,4.749-1.305A17.032,17.032,0,0,1,266.12,1148.861Z" fill="var(--footer-icons)"></path></g></g></svg></a></li><li class="social"><a href="https://github.com/btholt"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="0 0 32 32"><defs><clipPath id="clip-github-social"><rect width="32" height="32"></rect></clipPath></defs><g id="github-social" clip-path="url(#clip-github-social)"><g id="Group_272" data-name="Group 272" transform="translate(13522.5 -6994)"><path id="Subtraction_33" data-name="Subtraction 33" d="M-24967.5,8041a15.9,15.9,0,0,1-11.312-4.688A15.893,15.893,0,0,1-24983.5,8025a15.893,15.893,0,0,1,4.689-11.315A15.894,15.894,0,0,1-24967.5,8009a15.894,15.894,0,0,1,11.313,4.686A15.893,15.893,0,0,1-24951.5,8025a15.893,15.893,0,0,1-4.689,11.313A15.9,15.9,0,0,1-24967.5,8041Zm-3.781-4.571h0v3.918h7.895v-6.665a1.836,1.836,0,0,0-1.2-1.718c5.1-.617,7.467-2.975,7.467-7.424a7.176,7.176,0,0,0-1.637-4.728,6.74,6.74,0,0,0,.275-1.812,4.34,4.34,0,0,0-.52-2.452.574.574,0,0,0-.359-.1c-1.061,0-3.465,1.411-3.936,1.694a16.644,16.644,0,0,0-4.2-.489,16.379,16.379,0,0,0-3.969.445c-.846-.5-2.91-1.649-3.859-1.649a.566.566,0,0,0-.354.095,4.3,4.3,0,0,0-.521,2.452,6.7,6.7,0,0,0,.244,1.718,7.346,7.346,0,0,0-1.6,4.822,7.263,7.263,0,0,0,1.533,4.985c1.193,1.359,3.115,2.165,5.871,2.464a1.826,1.826,0,0,0-1.129,1.693v.5h0l-.006,0a7.121,7.121,0,0,1-2.033.363,2.608,2.608,0,0,1-.965-.158,4.438,4.438,0,0,1-1.836-1.881,2.361,2.361,0,0,0-1.248-1.091,3.472,3.472,0,0,0-1.217-.3.584.584,0,0,0-.545.224.282.282,0,0,0,.027.367,1.875,1.875,0,0,0,.447.307,4.732,4.732,0,0,1,.561.355,10.726,10.726,0,0,1,1.682,2.755c.043.092.078.163.105.217a3.876,3.876,0,0,0,2.42,1.185,6.036,6.036,0,0,0,.607.025c.875,0,1.988-.124,2-.125Z" transform="translate(11461 -1015)" fill="var(--footer-icons)"></path><g id="Ellipse_670" data-name="Ellipse 670" transform="translate(-13522.5 6994)" fill="none" stroke="var(--footer-icons)" stroke-width="1"><circle cx="16" cy="16" r="16" stroke="none"></circle><circle cx="16" cy="16" r="15.5" fill="none"></circle></g></g></g></svg></a></li><li class="social"><a href="https://linkedin.com/in/btholt"><svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="32" height="32" viewBox="0 0 32 32"><defs><clipPath id="clip-linkedin-social"><rect width="32" height="32"></rect></clipPath></defs><g id="linkedin-social" clip-path="url(#clip-linkedin-social)"><g id="Group_270" data-name="Group 270" transform="translate(-86.349 -633.073)"><path id="Path_375" data-name="Path 375" d="M115.789,633.073a2.324,2.324,0,0,1,1.682.676,2.194,2.194,0,0,1,.695,1.627V662.8a2.131,2.131,0,0,1-.695,1.609,2.314,2.314,0,0,1-1.646.659H88.69a2.307,2.307,0,0,1-1.646-.659,2.128,2.128,0,0,1-.695-1.609V635.376a2.19,2.19,0,0,1,.695-1.627,2.322,2.322,0,0,1,1.682-.676h27.063Zm-20.224,9.672a2.561,2.561,0,0,0,0-3.584,2.658,2.658,0,0,0-1.938-.712,2.724,2.724,0,0,0-1.957.712,2.371,2.371,0,0,0-.75,1.792,2.4,2.4,0,0,0,.731,1.792,2.605,2.605,0,0,0,1.9.713h.037A2.7,2.7,0,0,0,95.565,642.745ZM96,645.434H91.213V659.88H96Zm17.3,6.144a7.007,7.007,0,0,0-1.573-4.9,5.68,5.68,0,0,0-6.839-.769,5.663,5.663,0,0,0-1.426,1.573v-2.048H98.674q.036.841,0,7.717v6.728h4.791V651.8a3.592,3.592,0,0,1,.146-1.17,2.913,2.913,0,0,1,.878-1.206,2.429,2.429,0,0,1,1.609-.549,2.108,2.108,0,0,1,1.865.914,4.265,4.265,0,0,1,.549,2.341v7.752H113.3Z" fill="var(--footer-icons)"></path></g></g></svg></a></li><li class="social"><div class="terms"><p>Content Licensed Under CC-BY-NC-4.0</p><p>Code Samples and Excercises Licensed Under Apache 2.0</p><p>Site Designed by<!-- --> <a href="https://www.alexdanielson.com/">Alex Danielson</a></p></div></li></ul></footer></div></div><script id="__NEXT_DATA__" type="application/json">{"props":{"pageProps":{"statusCode":404}},"page":"/_error","query":{},"buildId":"ukR9Ip1HT6G2xZqt4xzY8","nextExport":true,"isFallback":false,"gip":true,"scriptLoader":[]}</script></body></html> |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
sqlite.holt.courses |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"pageProps":{"sections":[{"icon":"info-circle","title":"Welcome","slug":"welcome","lessons":[{"slug":"intro","fullSlug":"/lessons/welcome/intro","title":"Intro","order":"01A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/01-welcome/A-intro.md","description":""},{"slug":"what-is-sqlite","fullSlug":"/lessons/welcome/what-is-sqlite","title":"What is SQLite?","order":"01B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/01-welcome/B-what-is-sqlite.md","description":""}],"order":"01"},{"icon":"person-running","title":"Running SQLite","slug":"running-sqlite","lessons":[{"slug":"installing-sqlite","fullSlug":"/lessons/running-sqlite/installing-sqlite","title":"Installing SQLite","order":"02A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/02-running-sqlite/A-installing-sqlite.md","description":""},{"slug":"getting-started","fullSlug":"/lessons/running-sqlite/getting-started","title":"Getting Started","order":"02B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/02-running-sqlite/B-getting-started.md","description":""}],"order":"02"},{"icon":"code","title":"Basic SQL","slug":"basic-sql","lessons":[{"slug":"select","fullSlug":"/lessons/basic-sql/select","title":"SELECT","order":"03A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/03-basic-sql/A-select.md","description":""},{"slug":"insert","fullSlug":"/lessons/basic-sql/insert","title":"INSERT","order":"03B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/03-basic-sql/B-insert.md","description":""},{"slug":"tables","fullSlug":"/lessons/basic-sql/tables","title":"Tables","order":"03C","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/03-basic-sql/C-tables.md","description":""}],"order":"03"},{"icon":"table","title":"Intermediate SQL","slug":"intermediate-sql","lessons":[{"slug":"relational-data","fullSlug":"/lessons/intermediate-sql/relational-data","title":"Relational Data","order":"04A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/04-intermediate-sql/A-relational-data.md","description":""},{"slug":"other-types-of-joins","fullSlug":"/lessons/intermediate-sql/other-types-of-joins","title":"Other Types of Joins","order":"04B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/04-intermediate-sql/B-other-types-of-joins.md","description":""},{"slug":"foreign-keys","fullSlug":"/lessons/intermediate-sql/foreign-keys","title":"Foreign Keys","order":"04C","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/04-intermediate-sql/C-foreign-keys.md","description":""},{"slug":"aggregation","fullSlug":"/lessons/intermediate-sql/aggregation","title":"Aggregation","order":"04D","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/04-intermediate-sql/D-aggregation.md","description":""},{"slug":"subqueries","fullSlug":"/lessons/intermediate-sql/subqueries","title":"Subqueries","order":"04E","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/04-intermediate-sql/E-subqueries.md","description":""}],"order":"04"},{"icon":"circle-nodes","title":"Build a Project with Node.js and SQLite","slug":"build-a-project-with-nodejs-and-sqlite","lessons":[{"slug":"the-example-app","fullSlug":"/lessons/build-a-project-with-nodejs-and-sqlite/the-example-app","title":"The Example App","order":"05A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/05-build-a-project-with-nodejs-and-sqlite/A-the-example-app.md","description":""},{"slug":"sqlite3","fullSlug":"/lessons/build-a-project-with-nodejs-and-sqlite/sqlite3","title":"sqlite3","order":"05B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/05-build-a-project-with-nodejs-and-sqlite/B-sqlite3.md","description":""},{"slug":"project","fullSlug":"/lessons/build-a-project-with-nodejs-and-sqlite/project","title":"Project","order":"05C","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/05-build-a-project-with-nodejs-and-sqlite/C-project.md","description":""},{"slug":"alternatives-to-sqlite3","fullSlug":"/lessons/build-a-project-with-nodejs-and-sqlite/alternatives-to-sqlite3","title":"Alternatives to sqlite3","order":"05D","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/05-build-a-project-with-nodejs-and-sqlite/D-alternatives-to-sqlite3.md","description":""}],"order":"05"},{"icon":"fingerprint","title":"What is Unique to SQLite","slug":"what-is-unique-to-sqlite","lessons":[{"slug":"flexible-typing","fullSlug":"/lessons/what-is-unique-to-sqlite/flexible-typing","title":"Flexible Typing","order":"06A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/06-what-is-unique-to-sqlite/A-flexible-typing.md","description":""},{"slug":"limits-of-sqlite","fullSlug":"/lessons/what-is-unique-to-sqlite/limits-of-sqlite","title":"Limits of SQLite","order":"06B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/06-what-is-unique-to-sqlite/B-limits-of-sqlite.md","description":""},{"slug":"views","fullSlug":"/lessons/what-is-unique-to-sqlite/views","title":"Views","order":"06C","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/06-what-is-unique-to-sqlite/C-views.md","description":""}],"order":"06"},{"icon":"info-circle","title":"Performance","slug":"performance","lessons":[{"slug":"explain","fullSlug":"/lessons/performance/explain","title":"EXPLAIN","order":"07A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/07-performance/A-explain.md","description":""},{"slug":"indexes","fullSlug":"/lessons/performance/indexes","title":"Indexes","order":"07B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/07-performance/B-indexes.md","description":""}],"order":"07"},{"icon":"package","title":"JSON","slug":"json","lessons":[{"slug":"sqlite-extensions","fullSlug":"/lessons/json/sqlite-extensions","title":"SQLite Extensions","order":"08A","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/08-json/A-sqlite-extensions.md","description":""},{"slug":"querying","fullSlug":"/lessons/json/querying","title":"JSON","order":"08B","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/08-json/B-querying.md","description":""},{"slug":"jsonb","fullSlug":"/lessons/json/jsonb","title":"Jsonb","order":"08C","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/08-json/C-jsonb.md","description":""},{"slug":"more-advance-queries","fullSlug":"/lessons/json/more-advance-queries","title":"More Advance Queries","order":"08D","path":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/08-json/D-more-advance-queries.md","description":""}],"order":"08"}]},"__N_SSG":true} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1 @@ | ||
{"pageProps":{"post":{"attributes":{"title":"INSERT"},"html":"<p>We've seen how to read from tables using SELECT. Let's see how to insert new data into tables using INSERT.</p>\n<pre><code class=\"language-sql\">INSERT INTO Artist (name) VALUES ('Radiohead');\nSELECT * from Artist WHERE name = 'Radiohead';\n</code></pre>\n<p>This inserts a new artist into the Artist table. That table will have one column in it, <code>name</code> and that value is going to be <code>'Radiohead'</code> (notice single quotes again.) Notice we did not give it an ArtistId. That ID is autogenerated by SQLite for us and is guaranteed unique. If you had multiple columns, you would just make sure it's the same order on both sides</p>\n<pre><code class=\"language-sql\">-- Not a valid query for our database, just to show you\nINSERT INTO food (name, food_group, color) VALUES ('carrot', 'vegetable', 'orange'); -- notice the order is the same\n</code></pre>\n<p>Also, note that here you could use double quotes (though I typically won't.)</p>\n<pre><code class=\"language-sql\">INSERT INTO "Artist" ("name") VALUES ('Radiohead');\n</code></pre>\n<h2>UPDATE</h2>\n<p>Let's say you didn't intend to insert the band Radiohead but instead wanted to insert Daft Punk. You could do this.</p>\n<pre><code class=\"language-sql\">UPDATE Artist SET name = 'Daft Punk' WHERE name = 'Radiohead';\nSELECT * from Artist WHERE name = 'Daft Punk';\n</code></pre>\n<p>Notice the IDs are the same. You also could have selected by the ArtistId instead of the name (and probably would have been a safer practice.)</p>\n<blockquote>\n<p>We'll talk about how to upsert in a bit. We need to talk about table constraint before we talk about upserts. Just wanted you to know I'm not leaving it out as I knew some of you would be wondering!</p>\n</blockquote>\n<h2>RETURNING</h2>\n<p>One more update, let's change it to a different French techno group</p>\n<pre><code class=\"language-sql\">UPDATE Artist SET name = 'Justice' WHERE name = 'Daft Punk' RETURNING *;\n</code></pre>\n<p>The returning allows you to SELECT the rows you're updating so you can see what changed.</p>\n<h2>DELETE</h2>\n<p>Very similar to UPDATEs. RETURNING also works here if you want to see what gets deleted.</p>\n<pre><code class=\"language-sql\">DELETE FROM Artist WHERE name = 'Justice'; -- Feel free to put RETURNING * at the end\n</code></pre>\n","markdown":"\nWe've seen how to read from tables using SELECT. Let's see how to insert new data into tables using INSERT.\n\n```sql\nINSERT INTO Artist (name) VALUES ('Radiohead');\nSELECT * from Artist WHERE name = 'Radiohead';\n```\n\nThis inserts a new artist into the Artist table. That table will have one column in it, `name` and that value is going to be `'Radiohead'` (notice single quotes again.) Notice we did not give it an ArtistId. That ID is autogenerated by SQLite for us and is guaranteed unique. If you had multiple columns, you would just make sure it's the same order on both sides\n\n```sql\n-- Not a valid query for our database, just to show you\nINSERT INTO food (name, food_group, color) VALUES ('carrot', 'vegetable', 'orange'); -- notice the order is the same\n```\n\nAlso, note that here you could use double quotes (though I typically won't.)\n\n```sql\nINSERT INTO \"Artist\" (\"name\") VALUES ('Radiohead');\n```\n\n## UPDATE\n\nLet's say you didn't intend to insert the band Radiohead but instead wanted to insert Daft Punk. You could do this.\n\n```sql\nUPDATE Artist SET name = 'Daft Punk' WHERE name = 'Radiohead';\nSELECT * from Artist WHERE name = 'Daft Punk';\n```\n\nNotice the IDs are the same. You also could have selected by the ArtistId instead of the name (and probably would have been a safer practice.)\n\n> We'll talk about how to upsert in a bit. We need to talk about table constraint before we talk about upserts. Just wanted you to know I'm not leaving it out as I knew some of you would be wondering!\n\n## RETURNING\n\nOne more update, let's change it to a different French techno group\n\n```sql\nUPDATE Artist SET name = 'Justice' WHERE name = 'Daft Punk' RETURNING *;\n```\n\nThe returning allows you to SELECT the rows you're updating so you can see what changed.\n\n## DELETE\n\nVery similar to UPDATEs. RETURNING also works here if you want to see what gets deleted.\n\n```sql\nDELETE FROM Artist WHERE name = 'Justice'; -- Feel free to put RETURNING * at the end\n```\n","slug":"insert","title":"INSERT","section":"Basic SQL","icon":"code","filePath":"/home/runner/work/complete-intro-to-sqlite/complete-intro-to-sqlite/lessons/03-basic-sql/B-insert.md","nextSlug":"/lessons/basic-sql/tables","prevSlug":"/lessons/basic-sql/select"}},"__N_SSG":true} |
Oops, something went wrong.