{"id":525,"date":"2023-07-30T09:01:44","date_gmt":"2023-09-04T23:23:41","guid":{"rendered":"https:\/\/www.silicloud.com\/ja\/blog\/index.php\/2023\/11\/30\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/"},"modified":"2025-08-01T00:17:13","modified_gmt":"2025-07-31T15:17:13","slug":"ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/","title":{"rendered":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5"},"content":{"rendered":"<p>\u8457\u8005\u306f\u3001Write for Donations\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u4e00\u74b0\u3068\u3057\u3066\u5bc4\u4ed8\u3092\u53d7\u3051\u308b\u305f\u3081\u306b\/dev\/color\u3092\u9078\u3073\u307e\u3057\u305f\u3002<\/p>\n<h3>\u4ee5\u4e0b\u306e\u6587\u7ae0\u3092\u65e5\u672c\u8a9e\u3067\u81ea\u7136\u306b\u8a00\u3044\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u30021\u3064\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u5927\u4e08\u592b\u3067\u3059\uff1a<br \/>\n\u300cIntroduction\u300d<\/h3>\n<p>SQLite\u306f\u30c7\u30fc\u30bf\u3092\u4fdd\u5b58\u3059\u308b\u305f\u3081\u306e\u4eba\u6c17\u306e\u3042\u308b\u30aa\u30fc\u30d7\u30f3\u30bd\u30fc\u30b9\u306eSQL\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30a8\u30f3\u30b8\u30f3\u3067\u3059\u3002\u30b5\u30fc\u30d0\u30fc\u30ec\u30b9\u3067\u3042\u308a\u3001\u5b9f\u884c\u306b\u30b5\u30fc\u30d0\u30fc\u3092\u5fc5\u8981\u3068\u305b\u305a\u3001\u4ee3\u308f\u308a\u306b\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u306e\u30c7\u30a3\u30b9\u30af\u4e0a\u306b\u5b58\u5728\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u306b\u30c7\u30fc\u30bf\u3092\u8aad\u307f\u66f8\u304d\u3057\u307e\u3059\u3002\u3055\u3089\u306b\u3001SQLite\u306b\u306f\u8a2d\u5b9a\u304c\u4e0d\u8981\u3067\u3059\u3002\u3053\u308c\u306b\u3088\u308a\u3001\u57cb\u3081\u8fbc\u307f\u30b7\u30b9\u30c6\u30e0\u3001\u30c7\u30b9\u30af\u30c8\u30c3\u30d7\/\u30e2\u30d0\u30a4\u30eb\u30a2\u30d7\u30ea\u3001\u30d7\u30ed\u30c8\u30bf\u30a4\u30d4\u30f3\u30b0\u306a\u3069\u69d8\u3005\u306a\u7528\u9014\u3067\u30dd\u30fc\u30bf\u30d6\u30eb\u6027\u306b\u512a\u308c\u305f\u4eba\u6c17\u306e\u9078\u629e\u80a2\u3068\u306a\u3063\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>Node.js\u3067SQLite\u3092\u4f7f\u7528\u3059\u308b\u305f\u3081\u306b\u306f\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u304b\u3089SQL\u6587\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u9001\u4fe1\u3057\u3001\u5b9f\u884c\u3059\u308b\u305f\u3081\u306eSQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u63a5\u7d9a\u3059\u308b\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30af\u30e9\u30a4\u30a2\u30f3\u30c8\u304c\u5fc5\u8981\u3067\u3059\u3002\u4eba\u6c17\u306e\u3042\u308b\u9078\u629e\u80a2\u306e1\u3064\u306f\u3001SQLite 3\u306e\u975e\u540c\u671f\u30d0\u30a4\u30f3\u30c7\u30a3\u30f3\u30b0\u3092\u63d0\u4f9b\u3059\u308bnode-sqlite3\u30d1\u30c3\u30b1\u30fc\u30b8\u3067\u3059\u3002<\/p>\n<p>\u3053\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u306f\u3001node-sqlite3\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068\u63a5\u7d9a\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u305d\u306e\u5f8c\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u3001\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308bNode.js\u30a2\u30d7\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u6700\u5f8c\u306b\u3001\u30a2\u30d7\u30ea\u3092\u4fee\u6b63\u3057\u3066node-sqlite3\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3001\u66f4\u65b0\u3001\u524a\u9664\u3057\u307e\u3059\u3002<\/p>\n<h2>\u524d\u63d0\u6761\u4ef6<\/h2>\n<p>\u3053\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u306b\u5f93\u3046\u305f\u3081\u306b\u306f\u3001\u6b21\u306e\u3082\u306e\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n<ul class=\"post-ul\">\n<li>A Node.js development environment set up on your system. If you are using Ubuntu 22.04, install the latest version of Node.js by following Option 3 of our tutorial How To Install Node.js on Ubuntu 22.04. For other systems, consult our tutorial series How to Install Node.js and Create a Local Development Environment.<\/li>\n<li>SQLite3 installed on your development environment. Follow Step 1 of our tutorial How To Install and Use SQLite on Ubuntu 20.04.<\/li>\n<li>Basic knowledge of how to create tables and write SQL queries to retrieve and modify data in a table. Follow Steps 2 through 6 of our tutorial How To Install and Use SQLite on Ubuntu 20.04.<\/li>\n<li>Familiarity with how to write a Node.js program, which you can find in our tutorial How To Write and Run Your First Program in Node.js.<\/li>\n<\/ul>\n<h2>\u30b9\u30c6\u30c3\u30d71-\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306e\u8a2d\u5b9a<\/h2>\n<p>\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u3001\u4f9d\u5b58\u95a2\u4fc2\u3068\u3057\u3066node-sqlite3\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u307e\u3059\u3002<\/p>\n<p>\u6700\u521d\u306b\u3001mkdir\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u3053\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u3067\u306fsqlite_demo\u3068\u547c\u3070\u308c\u3066\u3044\u307e\u3059\u304c\u3001\u4efb\u610f\u306e\u540d\u524d\u306b\u7f6e\u304d\u63db\u3048\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">mkdir<\/span> <mark>sqlite_demo<\/mark><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u6b21\u306b\u3001cd\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u65b0\u3057\u304f\u4f5c\u6210\u3057\u305f\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306b\u79fb\u52d5\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token builtin class-name\">cd<\/span> <mark>sqlite_demo<\/mark><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>npm\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u3092npm\u30d1\u30c3\u30b1\u30fc\u30b8\u3068\u3057\u3066\u521d\u671f\u5316\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">npm<\/span> init <span class=\"token parameter variable\">-y<\/span><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30b3\u30de\u30f3\u30c9\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306b\u91cd\u8981\u306a\u30e1\u30bf\u30c7\u30fc\u30bf\u3092\u4fdd\u6301\u3059\u308bpackage.json\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u30aa\u30d7\u30b7\u30e7\u30f3\u306e-y\u306f\u3001npm\u306b\u3059\u3079\u3066\u306e\u30c7\u30d5\u30a9\u30eb\u30c8\u3092\u53d7\u3051\u5165\u308c\u308b\u3088\u3046\u306b\u6307\u793a\u3057\u307e\u3059\u3002<\/p>\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u4ee5\u4e0b\u306e\u51fa\u529b\u304c\u753b\u9762\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Wrote to \/home\/<mark>sammy<\/mark>\/<mark>sqlite_demo<\/mark>\/package.json: { &#8220;name&#8221;: &#8220;sqlite_demo&#8221;, &#8220;version&#8221;: &#8220;1.0.0&#8221;, &#8220;description&#8221;: &#8220;&#8221;, &#8220;main&#8221;: &#8220;index.js&#8221;, &#8220;scripts&#8221;: { &#8220;test&#8221;: &#8220;echo \\&#8221;Error: no test specified\\&#8221; &amp;&amp; exit 1&#8243; }, &#8220;keywords&#8221;: [], &#8220;author&#8221;: &#8220;&#8221;, &#8220;license&#8221;: &#8220;ISC&#8221; }<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u51fa\u529b\u306f\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u306e\u91cd\u8981\u306a\u30e1\u30bf\u30c7\u30fc\u30bf\u3092\u8a18\u9332\u3059\u308b\u30d7\u30ed\u30d1\u30c6\u30a3\u3092\u542b\u3080\u3001package.json\u30d5\u30a1\u30a4\u30eb\u304c\u4f5c\u6210\u3055\u308c\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002\u91cd\u8981\u306a\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u3044\u304f\u3064\u304b\u306f\u6b21\u306e\u901a\u308a\u3067\u3059\u3002<\/p>\n<ul class=\"post-ul\">\n<li>name: the name of your project.<\/li>\n<li>version: your project version.<\/li>\n<li>main: the starting point for your project.<\/li>\n<\/ul>\n<p>\u30c7\u30d5\u30a9\u30eb\u30c8\u30aa\u30d7\u30b7\u30e7\u30f3\u306f\u305d\u306e\u307e\u307e\u306b\u3057\u3066\u304a\u304f\u3053\u3068\u3082\u3067\u304d\u307e\u3059\u304c\u3001\u304a\u597d\u307f\u306b\u5408\u308f\u305b\u3066\u30d7\u30ed\u30d1\u30c6\u30a3\u306e\u5024\u3092\u5909\u66f4\u3057\u3066\u3082\u69cb\u3044\u307e\u305b\u3093\u3002\u30d7\u30ed\u30d1\u30c6\u30a3\u306b\u95a2\u3059\u308b\u8a73\u7d30\u60c5\u5831\u306f\u3001npm\u306epackage.json\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>\u6b21\u306b\u3001npm install\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u3063\u3066node-sqlite3\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">npm<\/span> <span class=\"token function\">install<\/span> sqlite3<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30d1\u30c3\u30b1\u30fc\u30b8\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u5f8c\u3001\u51fa\u529b\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>added 104 packages, and audited 105 packages in 9s 5 packages are looking for funding run `npm fund` for details found 0 vulnerabilities<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u6b21\u306e\u30bb\u30af\u30b7\u30e7\u30f3\u3067\u306f\u3001node-sqlite3\u3092\u30a4\u30f3\u30b9\u30c8\u30fc\u30eb\u3057\u305f\u306e\u3067\u3001\u305d\u308c\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u63a5\u7d9a\u3057\u307e\u3059\u3002<\/p>\n<h2>\u30b9\u30c6\u30c3\u30d72 \u2014 SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u63a5\u7d9a\u3059\u308b<\/h2>\n<p>\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001node-sqlite3\u3092\u4f7f\u7528\u3057\u3066\u3001\u4f5c\u6210\u3059\u308bSQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306bNode.js\u30d7\u30ed\u30b0\u30e9\u30e0\u3092\u63a5\u7d9a\u3057\u307e\u3059\u3002\u3053\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u306f\u3001\u7570\u306a\u308b\u30b5\u30e1\u3068\u305d\u306e\u5c5e\u6027\u304c\u542b\u307e\u308c\u3066\u3044\u307e\u3059\u3002\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u63a5\u7d9a\u3092\u78ba\u7acb\u3059\u308b\u305f\u3081\u306b\u3001node-sqlite3\u30d1\u30c3\u30b1\u30fc\u30b8\u306fDatabase\u30af\u30e9\u30b9\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002\u30af\u30e9\u30b9\u3092\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u5316\u3059\u308b\u3068\u3001\u30b3\u30f3\u30d4\u30e5\u30fc\u30bf\u30c7\u30a3\u30b9\u30af\u4e0a\u306bSQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u304c\u4f5c\u6210\u3055\u308c\u3001\u305d\u308c\u306b\u63a5\u7d9a\u3055\u308c\u307e\u3059\u3002\u63a5\u7d9a\u304c\u78ba\u7acb\u3055\u308c\u308b\u3068\u3001\u5f8c\u306e\u30bb\u30af\u30b7\u30e7\u30f3\u3067\u30c7\u30fc\u30bf\u306e\u633f\u5165\u3001\u53d6\u5f97\u3001\u66f4\u65b0\u306b\u4f7f\u7528\u3059\u308b\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u306e\u305f\u3081\u306e\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p>Using nano\u3001\u3082\u3057\u304f\u306f\u304a\u6c17\u306b\u5165\u308a\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3092\u4f7f\u7528\u3057\u3066\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3001\u958b\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u300cdb.js\u300d\u30d5\u30a1\u30a4\u30eb\u306b\u3001\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068\u306e\u63a5\u7d9a\u3092\u78ba\u7acb\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u4ee5\u4e0b\u306e\u5185\u5bb9\u3092\u65e5\u672c\u8a9e\u3067\u8868\u73fe\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u4e00\u3064\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u307f\u5fc5\u8981\u3067\u3059\u3002<br \/>\n\u300csqlite_demo\/db.js\u300d<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> sqlite3 <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"sqlite3\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">verbose<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token keyword\">const<\/span> filepath <span class=\"token operator\">=<\/span> <span class=\"token string\">\".\/fish.db\"<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection with SQLite has been established\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token keyword\">return<\/span> db<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306e\u884c\u3067\u306f\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30d7\u30ed\u30b0\u30e9\u30e0\u30d5\u30a1\u30a4\u30eb\u306b\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u30022\u884c\u76ee\u3067\u306f\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3092\u4fdd\u5b58\u3057\u305f\u3044\u5834\u6240\u3068\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u306e\u540d\u524d\uff08\u3053\u306e\u5834\u5408\u306ffish.db\uff09\u3092\u8a2d\u5b9a\u3057\u3066\u3001\u5909\u6570filepath\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002<\/p>\n<p>\u6b21\u306e\u884c\u3067\u306f\u3001createDbConnection()\u95a2\u6570\u3092\u5b9a\u7fa9\u3057\u3066\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068\u306e\u63a5\u7d9a\u3092\u78ba\u7acb\u3057\u307e\u3059\u3002\u95a2\u6570\u5185\u3067\u3001\u65b0\u3057\u3044\u30ad\u30fc\u30ef\u30fc\u30c9\u3092\u4f7f\u7528\u3057\u3066sqlite3.Database()\u30af\u30e9\u30b9\u306e\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u3053\u306e\u30af\u30e9\u30b9\u306f\u3001\u30d5\u30a1\u30a4\u30eb\u30d1\u30b9\u3068\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u306e2\u3064\u306e\u5f15\u6570\u3092\u53d7\u3051\u53d6\u308a\u307e\u3059\u3002<\/p>\n<p>\u4ee5\u4e0b\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u306a\u65e5\u672c\u8a9e\u3067\u306e\u8868\u73fe\u4f8b\u3067\u3059\uff1a<\/p>\n<p>\u6700\u521d\u306e\u5f15\u6570\u3067\u3042\u308b\u300cfilepath\u300d\u306f\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u540d\u524d\u3068\u30d1\u30b9\uff08\u3053\u306e\u5834\u5408\u306f&#8221;.\/fish.db&#8221;\uff09\u3092\u53d7\u3051\u5165\u308c\u307e\u3059\u30022\u756a\u76ee\u306e\u5f15\u6570\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304c\u4f5c\u6210\u3055\u308c\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u306e\u63a5\u7d9a\u304c\u78ba\u7acb\u3055\u308c\u305f\u5f8c\u306b\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u3059\u3002\u3053\u306e\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u63a5\u7d9a\u306e\u78ba\u7acb\u6642\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u306b\u30a8\u30e9\u30fc\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8a2d\u5b9a\u3059\u308b\u30a8\u30e9\u30fc\u30d1\u30e9\u30e1\u30fc\u30bf\u3092\u53d6\u308a\u307e\u3059\u3002\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5185\u3067\u3001if\u6587\u3092\u4f7f\u7528\u3057\u3066\u30a8\u30e9\u30fc\u306e\u6709\u7121\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\u6761\u4ef6\u304c\u771f\u306e\u5834\u5408\u306f\u3001console.error()\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u30ed\u30b0\u306b\u8868\u793a\u3057\u307e\u3059\u3002<\/p>\n<p>sqlite3.Database()\u30af\u30e9\u30b9\u3092\u4f7f\u7528\u3057\u3066\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3059\u308b\u3068\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u306bSQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u304c\u4f5c\u6210\u3055\u308c\u3001db\u5909\u6570\u306b\u683c\u7d0d\u3055\u308c\u305f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u304c\u8fd4\u3055\u308c\u307e\u3059\u3002\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306f\u3001\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u305f\u308a\u3001\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3001\u53d6\u5f97\u3001\u307e\u305f\u306f\u5909\u66f4\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3067\u304d\u308bSQL\u6587\u3092\u6e21\u3059\u305f\u3081\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u63d0\u4f9b\u3057\u307e\u3059\u3002<\/p>\n<p>\u6700\u5f8c\u306b\u3001\u6210\u529f\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u30ed\u30b0\u51fa\u529b\u3059\u308b\u305f\u3081\u306bconsole.log()\u3092\u547c\u3073\u51fa\u3057\u3001db\u5909\u6570\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n<p>\u6b21\u306b\u3001\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3059\u308b\u95a2\u6570\u3092\u4f5c\u6210\u3059\u308b\u305f\u3081\u306b\u3001\u5f37\u8abf\u3055\u308c\u305f\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u4ee5\u4e0b\u306e\u5185\u5bb9\u3092\u65e5\u672c\u8a9e\u3067\u8868\u73fe\u3059\u308b\u3068\u3001\u300csqlite_demo\/db.js\u300d\u3068\u306a\u308a\u307e\u3059\u3002<\/div>\n<pre class=\"post-pre\"><code><span class=\"token operator\">...<\/span>\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token operator\">...<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<mark><span class=\"token keyword\">function<\/span> <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">db<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><\/mark>\r\n  <mark>db<span class=\"token punctuation\">.<\/span><span class=\"token function\">exec<\/span><span class=\"token punctuation\">(<\/span><\/mark><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">\r\n  <mark>CREATE TABLE sharks<\/mark>\r\n  <mark>(<\/mark>\r\n    <mark>ID INTEGER PRIMARY KEY AUTOINCREMENT,<\/mark>\r\n    <mark>name   VARCHAR(50) NOT NULL,<\/mark>\r\n    <mark>color   VARCHAR(50) NOT NULL,<\/mark>\r\n    <mark>weight INTEGER NOT NULL<\/mark>\r\n  <mark>);<\/mark>\r\n<\/span><\/span><mark><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n<mark><span class=\"token punctuation\">}<\/span><\/mark>\r\n<\/code><\/pre>\n<p>createTable() \u95a2\u6570\u306f\u3001SQLite \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306b\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u3053\u306e\u95a2\u6570\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8 db \u3092\u30d1\u30e9\u30e1\u30fc\u30bf\u3068\u3057\u3066\u53d7\u3051\u53d6\u308a\u307e\u3059\u3002createTable() \u95a2\u6570\u5185\u90e8\u3067\u306f\u3001db \u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e exec() \u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u3001\u4e0e\u3048\u3089\u308c\u305f SQL \u6587\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u5b9f\u884c\u3059\u308b\u305f\u3081\u306b\u9001\u4fe1\u3057\u307e\u3059\u3002exec() \u30e1\u30bd\u30c3\u30c9\u306f\u3001\u7d50\u679c\u306e\u884c\u3092\u8fd4\u3055\u306a\u3044\u30af\u30a8\u30ea\u306b\u306e\u307f\u4f7f\u7528\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>exec()\u30e1\u30bd\u30c3\u30c9\u306b\u6e21\u3055\u308c\u305fCREATE TABLE sharks&#8230; SQL\u6587\u306f\u3001\u4ee5\u4e0b\u306e\u30d5\u30a3\u30fc\u30eb\u30c9\u3092\u6301\u3064sharks\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<ul class=\"post-ul\">\n<li>ID: stores values of INTEGER datatype. The PRIMARY KEY constraint designates the column as the primary key and AUTOINCREMENT instructs SQLite to automatically increment the ID column values for each row in the table.<\/li>\n<li>name: details the name of the shark using the VARCHAR datatype that has a maximum of 50 characters. The NOT NULL constraint ensures that the field cannot store NULL values.<\/li>\n<li>color: represents the color of the shark using the VARCHAR datatype with a maximum of 50 characters. The NOT NULL constraint signifies that the field should not accept NULL values.<\/li>\n<li>weight: stores the weight of the shark in kilograms using the INTEGER datatype, and uses the NOT NULL constraint to ensure that NULL values are not allowed.<\/li>\n<\/ul>\n<p>\u540c\u3058db.js\u30d5\u30a1\u30a4\u30eb\u5185\u3067\u3001createTable()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3059\u305f\u3081\u306b\u3001\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\n<p>sqlite_demo\/db.js\u3092\u65e5\u672c\u8a9e\u306b\u81ea\u7136\u306b\u8a00\u3044\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u30021\u3064\u306e\u9078\u629e\u80a2\u3067\u304b\u307e\u3044\u307e\u305b\u3093\u3002<\/p>\n<p>\u300csqlite_demo\/db.js\u300d<\/p>\n<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n    <mark><span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span>db<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection with SQLite has been established\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token keyword\">return<\/span> db<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">db<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token operator\">...<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u304c\u5b9f\u884c\u3055\u308c\u308b\u3068\u3001db\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u5f15\u6570\u3068\u3057\u3066createTable()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<\/p>\n<p>\u6b21\u306b\u3001createDbConnection() \u95a2\u6570\u3092\u547c\u3073\u51fa\u3059\u305f\u3081\u306b\u3001\u4ee5\u4e0b\u306e\u884c\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code>...\r\nfunction createDbConnection() {\r\n    ...\r\n}\r\n\r\n\r\nfunction createTable(db) {\r\n    ...\r\n}\r\n\r\n<mark>module.exports = createDbConnection();<\/mark>\r\n<\/code><\/pre>\n<p>\u524d\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001createDbConnection()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3066\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u306e\u63a5\u7d9a\u3092\u78ba\u7acb\u3057\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u8fd4\u3057\u307e\u3059\u3002\u305d\u3057\u3066\u3001module.exports\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u3001\u4ed6\u306e\u30d5\u30a1\u30a4\u30eb\u3067\u53c2\u7167\u3067\u304d\u308b\u3088\u3046\u306b\u3057\u307e\u3059\u3002<\/p>\n<p>\u3042\u306a\u305f\u306e\u30d5\u30a1\u30a4\u30eb\u306b\u306f\u4eca\u5f8c\u3001\u4ee5\u4e0b\u306e\u5185\u5bb9\u304c\u542b\u307e\u308c\u307e\u3059\u3002<\/p>\n<div>\u4e0b\u8a18\u306e\u6587\u3092\u65e5\u672c\u8a9e\u3067\u81ea\u7136\u306a\u8a00\u3044\u65b9\u306b\u8a00\u3044\u63db\u3048\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\uff1a sqlite_demo\/db.js<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> sqlite3 <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"sqlite3\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">verbose<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token keyword\">const<\/span> filepath <span class=\"token operator\">=<\/span> <span class=\"token string\">\".\/fish.db\"<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n    <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span>db<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection with SQLite has been established\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token keyword\">return<\/span> db<span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">db<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">exec<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">\r\n  CREATE TABLE sharks\r\n  (\r\n    ID INTEGER PRIMARY KEY AUTOINCREMENT,\r\n    name   VARCHAR(50) NOT NULL,\r\n    color   VARCHAR(50) NOT NULL,\r\n    weight INTEGER NOT NULL\r\n  );\r\n<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\nmodule<span class=\"token punctuation\">.<\/span>exports <span class=\"token operator\">=<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<\/code><\/pre>\n<p>\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u7d42\u4e86\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3082\u3057nano\u3092\u4f7f\u7528\u3057\u3066\u3044\u308b\u5834\u5408\u3001\u7d42\u4e86\u3059\u308b\u305f\u3081\u306bCTRL+X\u3092\u62bc\u3057\u3001\u4f5c\u3063\u305f\u5909\u66f4\u3092\u4fdd\u5b58\u3059\u308b\u305f\u3081\u306by\u3092\u62bc\u3057\u3001\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u78ba\u5b9a\u3059\u308b\u305f\u3081\u306bENTER\u3092\u62bc\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>node\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u51fa\u529b\u7d50\u679c\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u63a5\u7d9a\u304c\u6b63\u5e38\u306b\u78ba\u7acb\u3055\u308c\u3066\u3044\u308b\u3053\u3068\u3092\u793a\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Connection with SQLite has been established<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u6b21\u306b\u3001ls\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066fish.db\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u304c\u4f5c\u6210\u3055\u308c\u3066\u3044\u308b\u304b\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">ls<\/span><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>db.js <mark>fish.db<\/mark> node_modules package-lock.json package.json<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u51fa\u529b\u306b\u304a\u3044\u3066\u3001fish.db\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u306e\u8868\u793a\u304c\u78ba\u8a8d\u3055\u308c\u308b\u3053\u3068\u304b\u3089\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304c\u6b63\u5e38\u306b\u4f5c\u6210\u3055\u308c\u305f\u3053\u3068\u304c\u78ba\u8a8d\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>\u4eca\u5ea6\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3059\u308b\u305f\u3073\u306b\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306b\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3059\u308bcreateTable()\u95a2\u6570\u304c\u547c\u3070\u308c\u307e\u3059\u3002\u65e2\u306b\u5b58\u5728\u3059\u308b\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u3088\u3046\u3068\u3059\u308b\u3068\u3001SQLite\u306f\u30a8\u30e9\u30fc\u3092\u30b9\u30ed\u30fc\u3057\u307e\u3059\u3002\u3053\u308c\u3092\u78ba\u8a8d\u3059\u308b\u305f\u3081\u306b\u306f\u3001node\u30b3\u30de\u30f3\u30c9\u3092\u4f7f\u7528\u3057\u3066db.js\u30d5\u30a1\u30a4\u30eb\u3092\u518d\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u4eca\u56de\u3001\u4ee5\u4e0b\u306e\u51fa\u529b\u306b\u8868\u793a\u3055\u308c\u308b\u3088\u3046\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Connection with SQLite has been established undefined:0 [Error: SQLITE_ERROR: table sharks already exists Emitted &#8216;error&#8217; event on Database instance at: ] { errno: 1, code: &#8216;SQLITE_ERROR&#8217; } Node.js v17.6.0<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u306f\u3001sharks\u30c6\u30fc\u30d6\u30eb\u304c\u3059\u3067\u306b\u5b58\u5728\u3057\u3066\u3044\u308b\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002\u6700\u521d\u306b\u30ce\u30fc\u30c9\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u9b5a\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3068sharks\u30c6\u30fc\u30d6\u30eb\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002\u30b3\u30de\u30f3\u30c9\u3092\u518d\u5b9f\u884c\u3059\u308b\u3068\u3001createTable()\u95a2\u6570\u304c2\u56de\u76ee\u306b\u518d\u5b9f\u884c\u3055\u308c\u307e\u3059\u304c\u3001\u65e2\u306b\u30c6\u30fc\u30d6\u30eb\u304c\u5b58\u5728\u3057\u3066\u3044\u308b\u305f\u3081\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3059\u3002<\/p>\n<p>\u3053\u306e\u30a8\u30e9\u30fc\u306f\u3001\u4ed6\u306e\u30d5\u30a1\u30a4\u30eb\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306e\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3092\u64cd\u4f5c\u3059\u308b\u5834\u5408\u306b\u3082\u767a\u751f\u3057\u307e\u3059\u3002\u4f8b\u3048\u3070\u3001\u6b21\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308b\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u4f7f\u7528\u3059\u308b\u305f\u3081\u306b\u306f\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308b\u305f\u3081\u306e\u95a2\u9023\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001db.js\u304c\u5b9f\u884c\u3055\u308c\u3001\u540c\u3058\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u307e\u3059\u3002<\/p>\n<p>\u3053\u308c\u3092\u89e3\u6c7a\u3059\u308b\u305f\u3081\u306b\u3001fs\u30e2\u30b8\u30e5\u30fc\u30eb\u306eexistsSync()\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u30d7\u30ed\u30b8\u30a7\u30af\u30c8\u30c7\u30a3\u30ec\u30af\u30c8\u30ea\u5185\u306e\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30ebfish.db\u306e\u5b58\u5728\u3092\u78ba\u8a8d\u3057\u307e\u3059\u3002\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u306f\u3001createTable()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3055\u305a\u306b\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u306e\u63a5\u7d9a\u3092\u78ba\u7acb\u3057\u307e\u3059\u3002\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u63a5\u7d9a\u3092\u78ba\u7acb\u3057\u3001createTable()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<\/p>\n<p>\u3053\u308c\u3092\u884c\u3046\u305f\u3081\u306b\u3001\u3082\u3046\u4e00\u5ea6\u3042\u306a\u305f\u306e\u30a8\u30c7\u30a3\u30bf\u3067db.js\u3092\u958b\u3044\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u3042\u306a\u305f\u306edb.js\u30d5\u30a1\u30a4\u30eb\u306b\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u306e\u5b58\u5728\u3092\u78ba\u8a8d\u3059\u308b\u305f\u3081\u306e\u30cf\u30a4\u30e9\u30a4\u30c8\u3055\u308c\u305f\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u4ee5\u4e0b\u306f\u3001\u65e5\u672c\u8a9e\u3067\u306e\u30cd\u30a4\u30c6\u30a3\u30d6\u306a\u8868\u73fe\u3067\u3059\uff08\u305f\u3060\u3057\u30011\u3064\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u306e\u307f\u63d0\u4f9b\u3057\u307e\u3059\uff09\uff1a<br \/>\nsqlite_demo\/db.js \u2192 sqlite_demo\/db.js<\/div>\n<pre class=\"post-pre\"><code><mark><span class=\"token keyword\">const<\/span> fs <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"fs\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n<span class=\"token keyword\">const<\/span> sqlite3 <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"sqlite3\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">verbose<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token keyword\">const<\/span> filepath <span class=\"token operator\">=<\/span> <span class=\"token string\">\".\/fish.db\"<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <mark><span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>fs<span class=\"token punctuation\">.<\/span><span class=\"token function\">existsSync<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><\/mark>\r\n    <mark><span class=\"token keyword\">return<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n  <mark><span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">else<\/span> <span class=\"token punctuation\">{<\/span><\/mark>\r\n    <span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n      <span class=\"token punctuation\">}<\/span>\r\n      <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span>db<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection with SQLite has been established\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token keyword\">return<\/span> db<span class=\"token punctuation\">;<\/span>\r\n  <mark><span class=\"token punctuation\">}<\/span><\/mark>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306b\u3001\u30d5\u30a1\u30a4\u30eb\u30b7\u30b9\u30c6\u30e0\u3068\u5bfe\u8a71\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3055\u308c\u308b fs \u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u6b21\u306b\u3001\u8ffd\u52a0\u3055\u308c\u305f if \u6587\u306e\u4e2d\u3067\u3001\u4e0e\u3048\u3089\u308c\u305f\u5f15\u6570\u3067\u3042\u308b\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb .\/fish.db \u306e\u5b58\u5728\u3092\u30c1\u30a7\u30c3\u30af\u3059\u308b\u305f\u3081\u306b fs.existSync() \u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3059\u308b\u5834\u5408\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30d5\u30a1\u30a4\u30eb\u306e\u30d1\u30b9\u3092\u6307\u5b9a\u3057\u3066 sqlite3.Database() \u3092\u547c\u3073\u51fa\u3057\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3092\u7701\u7565\u3057\u307e\u3059\u3002\u3057\u304b\u3057\u3001\u30d5\u30a1\u30a4\u30eb\u304c\u5b58\u5728\u3057\u306a\u3044\u5834\u5408\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30a4\u30f3\u30b9\u30bf\u30f3\u30b9\u3092\u4f5c\u6210\u3057\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067 createTable() \u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u3066\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306b\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002<\/p>\n<p>\u73fe\u6642\u70b9\u3067\u306f\u3001\u5b8c\u5168\u306a\u30d5\u30a1\u30a4\u30eb\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n<div>\u4ee5\u4e0b\u306e\u6587\u3092\u65e5\u672c\u8a9e\u3067\u8868\u73fe\u3057\u306a\u304a\u3057\u3066\u304f\u3060\u3055\u3044\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\u306f1\u3064\u3060\u3051\u3067\u5341\u5206\u3067\u3059\uff09\uff1a<br \/>\nsqlite_demo\/db.js<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> fs <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"fs\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token keyword\">const<\/span> sqlite3 <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"sqlite3\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">.<\/span><span class=\"token function\">verbose<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token keyword\">const<\/span> filepath <span class=\"token operator\">=<\/span> <span class=\"token string\">\".\/fish.db\"<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>fs<span class=\"token punctuation\">.<\/span><span class=\"token function\">existsSync<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">return<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span> <span class=\"token keyword\">else<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">sqlite3<span class=\"token punctuation\">.<\/span>Database<\/span><span class=\"token punctuation\">(<\/span>filepath<span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n        <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n      <span class=\"token punctuation\">}<\/span>\r\n      <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span>db<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\"Connection with SQLite has been established\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token keyword\">return<\/span> db<span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">createTable<\/span><span class=\"token punctuation\">(<\/span><span class=\"token parameter\">db<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">exec<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">\r\n  CREATE TABLE sharks\r\n  (\r\n    ID INTEGER PRIMARY KEY AUTOINCREMENT,\r\n    name   VARCHAR(50) NOT NULL,\r\n    color   VARCHAR(50) NOT NULL,\r\n    weight INTEGER NOT NULL\r\n  );\r\n<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\nmodule<span class=\"token punctuation\">.<\/span>exports <span class=\"token operator\">=<\/span> <span class=\"token function\">createDbConnection<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<\/code><\/pre>\n<p>\u5909\u66f4\u304c\u7d42\u308f\u3063\u305f\u3089\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u9589\u3058\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>db.js \u30d5\u30a1\u30a4\u30eb\u304c\u8907\u6570\u56de\u5b9f\u884c\u3055\u308c\u305f\u969b\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u306a\u3044\u3088\u3046\u306b\u3059\u308b\u305f\u3081\u3001\u65b0\u3057\u304f\u59cb\u3081\u308b\u305f\u3081\u306b rm \u30b3\u30de\u30f3\u30c9\u3067 fish.db \u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">rm<\/span> fish.db<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>db.js\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Connection with SQLite has been established<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u300cdb.js\u304c\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u63a5\u7d9a\u3057\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3092\u518d\u5b9f\u884c\u3057\u3066\u3082\u30c6\u30fc\u30d6\u30eb\u3092\u518d\u4f5c\u6210\u3059\u308b\u8a66\u307f\u3092\u884c\u308f\u306a\u3044\u304b\u3069\u3046\u304b\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u300d<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> db.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u4eca\u3001\u3082\u3046\u30a8\u30e9\u30fc\u304c\u51fa\u306a\u304f\u306a\u3063\u305f\u3053\u3068\u306b\u6c17\u3065\u304f\u3067\u3057\u3087\u3046\u3002<\/p>\n<p>SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u306e\u63a5\u7d9a\u304c\u78ba\u7acb\u3057\u3001\u30c6\u30fc\u30d6\u30eb\u304c\u4f5c\u6210\u3055\u308c\u305f\u306e\u3067\u3001\u30c7\u30fc\u30bf\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u633f\u5165\u3057\u307e\u3059\u3002<\/p>\n<h2>\u30b9\u30c6\u30c3\u30d73 \u2014 SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3078\u306e\u30c7\u30fc\u30bf\u633f\u5165<\/h2>\n<p>\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308b\u95a2\u6570\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u633f\u5165\u3057\u305f\u3044\u30c7\u30fc\u30bf\u306f\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3068\u3057\u3066\u6e21\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067insertData.js\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3066\u958b\u3044\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> insertData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u300cinsertData.js\u300d\u30d5\u30a1\u30a4\u30eb\u306b\u3001\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3092\u53d6\u5f97\u3059\u308b\u305f\u3081\u306e\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u4e0b\u8a18\u306f\u3001\u30cd\u30a4\u30c6\u30a3\u30d6\u306e\u65e5\u672c\u8a9e\u3067\u306e\u4e00\u3064\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u3059\u3002<br \/>\n\u300csqlite_demo\/insertData.js\u300d<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">insertRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> <span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> color<span class=\"token punctuation\">,<\/span> weight<span class=\"token punctuation\">]<\/span> <span class=\"token operator\">=<\/span> process<span class=\"token punctuation\">.<\/span>argv<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">2<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306e\u884c\u3067\u306f\u3001\u524d\u306e\u30b9\u30c6\u30c3\u30d7\u3067db.js\u30d5\u30a1\u30a4\u30eb\u306b\u30a8\u30af\u30b9\u30dd\u30fc\u30c8\u3057\u305f\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u30022\u884c\u76ee\u3067\u306f\u3001\u5f8c\u3067\u30c6\u30fc\u30d6\u30eb\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308b\u305f\u3081\u306b\u4f7f\u7528\u3059\u308binsertRow()\u95a2\u6570\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002\u95a2\u6570\u5185\u3067\u306f\u3001process.argv\u306f\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u306e\u5f15\u6570\u3092\u3059\u3079\u3066\u914d\u5217\u3067\u8fd4\u3057\u307e\u3059\u30020\u756a\u76ee\u306e\u8981\u7d20\u306b\u306fNode\u306e\u30d1\u30b9\u304c\u542b\u307e\u308c\u30011\u756a\u76ee\u306e\u8981\u7d20\u306b\u306fJavaScript\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u304c\u683c\u7d0d\u3055\u308c\u307e\u3059\u30022\u756a\u76ee\u4ee5\u964d\u306e\u8981\u7d20\u306f\u3001\u30d5\u30a1\u30a4\u30eb\u306b\u6e21\u3055\u308c\u305f\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u304c\u542b\u307e\u308c\u307e\u3059\u3002\u6700\u521d\u306e2\u3064\u306e\u5f15\u6570\u3092\u30b9\u30ad\u30c3\u30d7\u3059\u308b\u305f\u3081\u306b\u3001JavaScript\u306eslice()\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u914d\u5217\u306e\u6d45\u3044\u30b3\u30d4\u30fc\u3092\u4f5c\u6210\u3057\u30012\u756a\u76ee\u304b\u3089\u914d\u5217\u306e\u672b\u5c3e\u307e\u3067\u306e\u8981\u7d20\u3092\u8fd4\u3057\u307e\u3059\u3002<\/p>\n<p>\u6b21\u306b\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3059\u308b\u305f\u3081\u306e\u30cf\u30a4\u30e9\u30a4\u30c8\u3055\u308c\u305f\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u300csqlite_demo\/insertData.js\u300d\u3092\u65e5\u672c\u8a9e\u3067\u8a00\u3044\u63db\u3048\u308b\u3068\u3001\u300cSQLite\u30c7\u30e2\/\u30c7\u30fc\u30bf\u306e\u633f\u5165.js\u300d\u3068\u306a\u308a\u307e\u3059\u3002<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">insertRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> <span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> color<span class=\"token punctuation\">,<\/span> weight<span class=\"token punctuation\">]<\/span> <span class=\"token operator\">=<\/span> process<span class=\"token punctuation\">.<\/span>argv<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">2<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <mark>db<span class=\"token punctuation\">.<\/span><span class=\"token function\">run<\/span><span class=\"token punctuation\">(<\/span><\/mark>\r\n    <mark><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">INSERT INTO sharks (name, color, weight) VALUES (?, ?, ?)<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span><\/mark>\r\n    <mark><span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> color<span class=\"token punctuation\">,<\/span> weight<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span><\/mark>\r\n    <mark><span class=\"token keyword\">function<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><\/mark>\r\n      <mark><span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span><\/mark>\r\n        <mark>console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n      <mark><span class=\"token punctuation\">}<\/span><\/mark>\r\n      <mark>console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">Inserted a row with the ID: <\/span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${<\/span><span class=\"token keyword\">this<\/span><span class=\"token punctuation\">.<\/span>lastID<span class=\"token interpolation-punctuation punctuation\">}<\/span><\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n    <mark><span class=\"token punctuation\">}<\/span><\/mark>\r\n  <mark><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u524d\u306e\u30b3\u30fc\u30c9\u3067\u306f\u3001db.run()\u30e1\u30bd\u30c3\u30c9\u3092\u547c\u3073\u51fa\u3057\u3066\u3044\u307e\u3059\u3002\u3053\u306e\u30e1\u30bd\u30c3\u30c9\u306b\u306f3\u3064\u306e\u5f15\u6570\u304c\u3042\u308a\u307e\u3059\uff1aSQL\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3001\u914d\u5217\u3001\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u95a2\u6570\u3067\u3059\u3002\u6700\u521d\u306e\u5f15\u6570\u3067\u3042\u308b\u300cINSERT INTO sharks&#8230;\u300d\u306f\u3001\u30c7\u30fc\u30bf\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u633f\u5165\u3059\u308b\u305f\u3081\u306eSQL\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3067\u3059\u3002INSERT\u6587\u306eVALUES\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3067\u306f\u3001\u633f\u5165\u3059\u308b\u5024\u306e\u30b3\u30f3\u30de\u533a\u5207\u308a\u306e\u30ea\u30b9\u30c8\u3092\u53d6\u308a\u307e\u3059\u3002\u76f4\u63a5\u5024\u3092\u6e21\u3059\u4ee3\u308f\u308a\u306b\u3001?\u306e\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u3092\u6e21\u3057\u3066\u3044\u308b\u3053\u3068\u306b\u6ce8\u610f\u3057\u3066\u304f\u3060\u3055\u3044\u3002\u3053\u308c\u306fSQL\u30a4\u30f3\u30b8\u30a7\u30af\u30b7\u30e7\u30f3\u653b\u6483\u3092\u9632\u3050\u305f\u3081\u3067\u3059\u3002\u5b9f\u884c\u4e2d\u3001SQLite\u306f\u81ea\u52d5\u7684\u306b\u30d7\u30ec\u30fc\u30b9\u30db\u30eb\u30c0\u30fc\u3092db.run()\u30e1\u30bd\u30c3\u30c9\u306e\u7b2c2\u5f15\u6570\u3067\u6e21\u3055\u308c\u305f\u5024\u306e\u914d\u5217\u306b\u7f6e\u304d\u63db\u3048\u307e\u3059\u3002<\/p>\n<p>\u6700\u5f8c\u306b\u3001db.run()\u30e1\u30bd\u30c3\u30c9\u306e\u7b2c\u4e09\u5f15\u6570\u306f\u3001\u30c7\u30fc\u30bf\u304c\u30c6\u30fc\u30d6\u30eb\u306b\u6b63\u5e38\u306b\u633f\u5165\u3055\u308c\u305f\u969b\u306b\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u3059\u3002\u3082\u3057\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u306f\u3001\u305d\u306e\u30a8\u30e9\u30fc\u30e1\u30c3\u30bb\u30fc\u30b8\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u30ed\u30b0\u51fa\u529b\u3055\u308c\u307e\u3059\u3002\u633f\u5165\u304c\u6210\u529f\u3057\u305f\u5834\u5408\u306f\u3001this.lastID\u304c\u8fd4\u3059\u65b0\u3057\u304f\u633f\u5165\u3055\u308c\u305f\u884c\u306eID\u3068\u5171\u306b\u6210\u529f\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u30ed\u30b0\u51fa\u529b\u3057\u307e\u3059\u3002<\/p>\n<p>\u4eca\u3001insertRow() \u95a2\u6570\u3092\u547c\u3073\u51fa\u3059\u305f\u3081\u306b\u3001\u5f37\u8abf\u3055\u308c\u305f\u884c\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\u4ee5\u4e0b\u306e\u5185\u5bb9\u3092\u65e5\u672c\u8a9e\u3067\u8a00\u3044\u63db\u3048\u308b\uff08\u30aa\u30d7\u30b7\u30e7\u30f3\u30921\u3064\u63d0\u4f9b\uff09:<br \/>\nsqlite_demo\/insertData.js\u300csqlite_demo\/insertData.js\u300d<\/p>\n<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">insertRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> <span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> color<span class=\"token punctuation\">,<\/span> weight<span class=\"token punctuation\">]<\/span> <span class=\"token operator\">=<\/span> process<span class=\"token punctuation\">.<\/span>argv<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">2<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">run<\/span><span class=\"token punctuation\">(<\/span>\r\n    <span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">INSERT INTO sharks (name, color, weight) VALUES (?, ?, ?)<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> color<span class=\"token punctuation\">,<\/span> weight<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token keyword\">function<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n        console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n      <span class=\"token punctuation\">}<\/span>\r\n      console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">Inserted a row with the ID: <\/span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${<\/span><span class=\"token keyword\">this<\/span><span class=\"token punctuation\">.<\/span>lastID<span class=\"token interpolation-punctuation punctuation\">}<\/span><\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n  <span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<mark><span class=\"token function\">insertRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n<\/code><\/pre>\n<p>\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u9589\u3058\u3001\u305d\u306e\u5f8c\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u300cshark name\u300d\u3068\u3044\u3046\u540d\u524d\u3001\u8272\u3001\u91cd\u3055\u306e\u5f15\u6570\u3068\u5171\u306b\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> insertData.js sammy blue <span class=\"token number\">1900<\/span><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u51fa\u529b\u306f\u3001\u30d7\u30e9\u30a4\u30de\u30eaID\u304c1\u306e\u30c6\u30fc\u30d6\u30eb\u306b\u884c\u304c\u633f\u5165\u3055\u308c\u305f\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Inserted a row with the ID: 1<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u7570\u306a\u308b\u5f15\u6570\u3067\u30b3\u30de\u30f3\u30c9\u3092\u518d\u5ea6\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002 (Kotonaru hikusuu de komando o saido jikk\u014d shite kudasai.)<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> insertData.js max white <span class=\"token number\">2100<\/span><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Inserted a row with the ID: 2<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u524d\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001sharks\u30c6\u30fc\u30d6\u30eb\u306b2\u3064\u306e\u884c\u304c\u4f5c\u6210\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u30c7\u30fc\u30bf\u3092\u633f\u5165\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\u3001\u6b21\u306b\u30c7\u30fc\u30bf\u3092\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u53d6\u308a\u51fa\u3057\u307e\u3059\u3002<\/p>\n<h2>\u30b9\u30c6\u30c3\u30d74 \u2014 SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53d6\u5f97<\/h2>\n<p>\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306esharks\u30c6\u30fc\u30d6\u30eb\u306b\u4fdd\u5b58\u3055\u308c\u3066\u3044\u308b\u3059\u3079\u3066\u306e\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3057\u3001\u305d\u308c\u3089\u3092\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u30ed\u30b0\u51fa\u529b\u3057\u307e\u3059\u3002<\/p>\n<p>\u6700\u521d\u306b\u3001listData.js\u30d5\u30a1\u30a4\u30eb\u3092\u958b\u3044\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> listData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u3042\u306a\u305f\u306e listData.js \u30d5\u30a1\u30a4\u30eb\u306b\u3001\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u3059\u3079\u3066\u306e\u884c\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002<\/p>\n<div>\n<p>\u300csqlite_demo\/listData.js\u300d\u3092\u65e5\u672c\u8a9e\u3067\u81ea\u7136\u306b\u8a00\u3044\u63db\u3048\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<p>\u300csqlite_demo\/listData.js\u300d<\/p>\n<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">selectRows<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">each<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">SELECT * FROM sharks<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<span class=\"token punctuation\">,<\/span> row<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n    console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span>row<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306b\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u6b21\u306b\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u3059\u3079\u3066\u306e\u884c\u3092\u53d6\u5f97\u3059\u308bselectRows()\u95a2\u6570\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002\u95a2\u6570\u5185\u90e8\u3067\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8db\u306eeach()\u30e1\u30bd\u30c3\u30c9\u3092\u4f7f\u7528\u3057\u3066\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u30891\u3064\u305a\u3064\u884c\u3092\u53d6\u5f97\u3057\u307e\u3059\u3002each()\u30e1\u30bd\u30c3\u30c9\u306b\u306f\u3001SQL\u6587\u3068\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u306e2\u3064\u306e\u5f15\u6570\u304c\u5fc5\u8981\u3067\u3059\u3002<\/p>\n<p>\u6700\u521d\u306e\u5f15\u6570SELECT\u306f\u3001sharks\u30c6\u30fc\u30d6\u30eb\u306e\u3059\u3079\u3066\u306e\u884c\u3092\u8fd4\u3057\u307e\u3059\u3002\u4e8c\u756a\u76ee\u306e\u5f15\u6570\u306f\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u884c\u304c\u53d6\u5f97\u3055\u308c\u308b\u305f\u3073\u306b\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u3059\u3002\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u5185\u3067\u306f\u3001\u30a8\u30e9\u30fc\u30c1\u30a7\u30c3\u30af\u3092\u884c\u3044\u307e\u3059\u3002\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u305f\u5834\u5408\u306f\u3001throw\u6587\u3092\u4f7f\u7528\u3057\u3066\u30ab\u30b9\u30bf\u30e0\u30a8\u30e9\u30fc\u3092\u4f5c\u6210\u3057\u307e\u3059\u3002\u30c7\u30fc\u30bf\u306e\u53d6\u5f97\u4e2d\u306b\u30a8\u30e9\u30fc\u304c\u767a\u751f\u3057\u306a\u304b\u3063\u305f\u5834\u5408\u306f\u3001\u30c7\u30fc\u30bf\u304c\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u8a18\u9332\u3055\u308c\u307e\u3059\u3002<\/p>\n<p>\u3001\u300cselectRows()\u300d\u95a2\u6570\u3092\u547c\u3073\u51fa\u3059\u305f\u3081\u306b\u3001\u30cf\u30a4\u30e9\u30a4\u30c8\u3055\u308c\u305f\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>sqlite_demo\/listData.js\u306e\u5185\u5bb9\u3092\u65e5\u672c\u8a9e\u3067\u30d1\u30e9\u30d5\u30ec\u30fc\u30ba\u3059\u308b\u3068\u6b21\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">selectRows<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">each<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">SELECT * FROM sharks<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<span class=\"token punctuation\">,<\/span> row<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token operator\">=&gt;<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">throw<\/span> <span class=\"token keyword\">new<\/span> <span class=\"token class-name\">Error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n    console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span>row<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<mark><span class=\"token function\">selectRows<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span><\/mark>\r\n<\/code><\/pre>\n<p>\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u7d42\u4e86\u3057\u3001\u305d\u306e\u5f8c\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> listData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u6b21\u306e\u3088\u3046\u306a\u8868\u793a\u304c\u51fa\u529b\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>{ ID: 1, name: &#8216;sammy&#8217;, color: &#8216;blue&#8217;, weight: 1900 } { ID: 2, name: &#8216;max&#8217;, color: &#8216;white&#8217;, weight: 2100 }<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u524d\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u633f\u5165\u3057\u305fsharks\u30c6\u30fc\u30d6\u30eb\u306e\u3059\u3079\u3066\u306e\u884c\u304c\u51fa\u529b\u3055\u308c\u307e\u3059\u3002node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u306f\u3001\u5404SQL\u306e\u7d50\u679c\u3092JavaScript\u306e\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u306b\u5909\u63db\u3057\u307e\u3059\u3002<\/p>\n<p>SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u30c7\u30fc\u30bf\u3092\u53d6\u5f97\u3067\u304d\u308b\u3088\u3046\u306b\u306a\u3063\u305f\u306e\u3067\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30c7\u30fc\u30bf\u3092\u66f4\u65b0\u3057\u307e\u3059\u3002<\/p>\n<h2>\u30b9\u30c6\u30c3\u30d75 &#8211; SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u3067\u30c7\u30fc\u30bf\u3092\u5909\u66f4\u3059\u308b\u3002<\/h2>\n<p>\u3053\u306e\u30b9\u30c6\u30c3\u30d7\u3067\u306f\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u884c\u3092\u66f4\u65b0\u3057\u307e\u3059\u3002\u305d\u306e\u305f\u3081\u306b\u3001\u30d7\u30ed\u30b0\u30e9\u30e0\u306b\u4fee\u6b63\u3057\u305f\u3044\u884c\u306e\u4e3b\u30ad\u30fc\u3092\u542b\u3080\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3092\u6e21\u3057\u307e\u3059\u3002\u307e\u305f\u3001\u884c\u3092\u66f4\u65b0\u3059\u308b\u305f\u3081\u306e\u5024\u3082\u6307\u5b9a\u3057\u307e\u3059\u3002<\/p>\n<p>\u3042\u306a\u305f\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067updateData.js\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3066\u958b\u3044\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> updateData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u300cupdateData.js\u300d\u30d5\u30a1\u30a4\u30eb\u306b\u3001\u30ec\u30b3\u30fc\u30c9\u3092\u30a2\u30c3\u30d7\u30c7\u30fc\u30c8\u3059\u308b\u305f\u3081\u306e\u4ee5\u4e0b\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>sqlite_demo\/updateData.js\u3092\u65e5\u672c\u8a9e\u3067\u8a00\u3044\u63db\u3048\u308b\u3068\u3001\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<br \/>\n\u300csqlite_demo\/updateData.js\u300d<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">function<\/span> <span class=\"token function\">updateRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> <span class=\"token punctuation\">[<\/span>id<span class=\"token punctuation\">,<\/span> name<span class=\"token punctuation\">]<\/span> <span class=\"token operator\">=<\/span> process<span class=\"token punctuation\">.<\/span>argv<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">2<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">run<\/span><span class=\"token punctuation\">(<\/span>\r\n    <span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">UPDATE sharks SET name = ? WHERE id = ?<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token punctuation\">[<\/span>name<span class=\"token punctuation\">,<\/span> id<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span>\r\n    <span class=\"token keyword\">function<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n        console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n      <span class=\"token punctuation\">}<\/span>\r\n      console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">Row <\/span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${<\/span>id<span class=\"token interpolation-punctuation punctuation\">}<\/span><\/span><span class=\"token string\"> has been updated<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n  <span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token function\">updateRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306b\u3001db.js\u30d5\u30a1\u30a4\u30eb\u304b\u3089\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u6b21\u306b\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u884c\u3092\u66f4\u65b0\u3059\u308bupdateRow\u95a2\u6570\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002\u95a2\u6570\u5185\u3067\u306f\u3001\u30b3\u30de\u30f3\u30c9\u30e9\u30a4\u30f3\u5f15\u6570\u3092id\u3068name\u306e\u5909\u6570\u306b\u5c55\u958b\u3057\u307e\u3059\u3002id\u5909\u6570\u306b\u306f\u66f4\u65b0\u3057\u305f\u3044\u884c\u306e\u4e3b\u30ad\u30fcID\u304c\u542b\u307e\u308c\u3001name\u306b\u306fname\u30d5\u30a3\u30fc\u30eb\u30c9\u306b\u53cd\u6620\u3055\u305b\u305f\u3044\u5024\u304c\u542b\u307e\u308c\u307e\u3059\u3002<\/p>\n<p>\u305d\u306e\u5f8c\u3001SQL\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u3068\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3068\u3044\u3046\u5f15\u6570\u3092\u6301\u3064db.run()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002UPDATE SQL\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8\u306f\u3001\u540d\u524d\u306e\u30ab\u30e9\u30e0\u3092\u73fe\u5728\u306e\u5024\u304b\u3089name\u5909\u6570\u306b\u6e21\u3055\u308c\u305f\u5024\u306b\u5909\u66f4\u3057\u307e\u3059\u3002WHERE\u53e5\u306f\u3001id\u5909\u6570\u306eID\u3092\u6301\u3064\u884c\u306e\u307f\u3092\u66f4\u65b0\u3059\u308b\u3053\u3068\u3092\u4fdd\u8a3c\u3057\u307e\u3059\u3002db.run()\u30e1\u30bd\u30c3\u30c9\u306b\u306f\u3001\u5024\u304c\u66f4\u65b0\u3055\u308c\u305f\u5f8c\u306b\u4e00\u5ea6\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3068\u3044\u30462\u756a\u76ee\u306e\u5f15\u6570\u304c\u3042\u308a\u307e\u3059\u3002<\/p>\n<p>\u6700\u5f8c\u306b\u3001updateRow()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<\/p>\n<p>\u5909\u66f4\u4f5c\u696d\u304c\u7d42\u4e86\u3057\u305f\u3089\u3001\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u9589\u3058\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<p>\u6307\u5b9a\u3057\u305f\u884c\u306eid\u3068\u65b0\u3057\u3044\u540d\u524d\u3092\u4f7f\u3063\u3066\u3001updateData.js\u30d5\u30a1\u30a4\u30eb\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> updateData.js <span class=\"token number\">2<\/span> sonny<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Row 2 has been updated<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u540d\u524d\u304c\u5909\u66f4\u3055\u308c\u305f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> listData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u3042\u306a\u305f\u306e\u51fa\u529b\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u306a\u308a\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>{ ID: 1, name: &#8216;sammy&#8217;, color: &#8216;blue&#8217;, weight: 1900 } { ID: 2, name: &#8216;<mark>sonny<\/mark>&#8216;, color: &#8216;white&#8217;, weight: 2100 }<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u51fa\u529b\u306f\u3001ID 2\u306e\u884c\u306e\u540d\u524d\u30d5\u30a3\u30fc\u30eb\u30c9\u306e\u5024\u304c\u73fe\u5728Sonny\u3067\u3042\u308b\u3053\u3068\u3092\u793a\u3057\u3066\u3044\u307e\u3059\u3002<\/p>\n<p>\u305d\u308c\u306b\u3088\u308a\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u884c\u3092\u66f4\u65b0\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002\u6b21\u306b\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u304b\u3089\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3057\u307e\u3059\u3002<\/p>\n<h2>\u30b9\u30c6\u30c3\u30d76 \u2014 SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3059\u308b<\/h2>\n<p>\u3053\u306e\u90e8\u5206\u3067\u306f\u3001node-sqlite3\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u30c6\u30fc\u30d6\u30eb\u304b\u3089\u884c\u3092\u9078\u629e\u3057\u3066\u524a\u9664\u3057\u307e\u3059\u3002<\/p>\n<p>\u3042\u306a\u305f\u306e\u30c6\u30ad\u30b9\u30c8\u30a8\u30c7\u30a3\u30bf\u3067deleteData.js\u30d5\u30a1\u30a4\u30eb\u3092\u4f5c\u6210\u3057\u3066\u958b\u304d\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">nano<\/span> deleteData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30c7\u30fc\u30bf\u524a\u9664\u306e\u305f\u3081\u306e deleteData.js \u30d5\u30a1\u30a4\u30eb\u306b\u3001\u6b21\u306e\u30b3\u30fc\u30c9\u3092\u8ffd\u52a0\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<div>\n<p>\u4ee5\u4e0b\u306e\u30d5\u30a1\u30a4\u30eb\u3001sqlite_demo\/deleteData.js\u3092\u65e5\u672c\u8a9e\u3067\u8a00\u3044\u63db\u3048\u308b\u3068\uff1a<\/p>\n<p>sqlite_demo\/deleteData.js\u3092\u524a\u9664<\/p>\n<\/div>\n<pre class=\"post-pre\"><code><span class=\"token keyword\">const<\/span> db <span class=\"token operator\">=<\/span> <span class=\"token function\">require<\/span><span class=\"token punctuation\">(<\/span><span class=\"token string\">\".\/db\"<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n\r\n<span class=\"token keyword\">async<\/span> <span class=\"token keyword\">function<\/span> <span class=\"token function\">deleteRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n  <span class=\"token keyword\">const<\/span> <span class=\"token punctuation\">[<\/span>id<span class=\"token punctuation\">]<\/span> <span class=\"token operator\">=<\/span> process<span class=\"token punctuation\">.<\/span>argv<span class=\"token punctuation\">.<\/span><span class=\"token function\">slice<\/span><span class=\"token punctuation\">(<\/span><span class=\"token number\">2<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  db<span class=\"token punctuation\">.<\/span><span class=\"token function\">run<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">DELETE FROM sharks WHERE id = ?<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">,<\/span> <span class=\"token punctuation\">[<\/span>id<span class=\"token punctuation\">]<\/span><span class=\"token punctuation\">,<\/span> <span class=\"token keyword\">function<\/span> <span class=\"token punctuation\">(<\/span><span class=\"token parameter\">error<\/span><span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n    <span class=\"token keyword\">if<\/span> <span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">)<\/span> <span class=\"token punctuation\">{<\/span>\r\n      <span class=\"token keyword\">return<\/span> console<span class=\"token punctuation\">.<\/span><span class=\"token function\">error<\/span><span class=\"token punctuation\">(<\/span>error<span class=\"token punctuation\">.<\/span>message<span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n    <span class=\"token punctuation\">}<\/span>\r\n    console<span class=\"token punctuation\">.<\/span><span class=\"token function\">log<\/span><span class=\"token punctuation\">(<\/span><span class=\"token template-string\"><span class=\"token template-punctuation string\">`<\/span><span class=\"token string\">Row with the ID <\/span><span class=\"token interpolation\"><span class=\"token interpolation-punctuation punctuation\">${<\/span>id<span class=\"token interpolation-punctuation punctuation\">}<\/span><\/span><span class=\"token string\"> has been deleted<\/span><span class=\"token template-punctuation string\">`<\/span><\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n  <span class=\"token punctuation\">}<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<span class=\"token punctuation\">}<\/span>\r\n\r\n<span class=\"token function\">deleteRow<\/span><span class=\"token punctuation\">(<\/span><span class=\"token punctuation\">)<\/span><span class=\"token punctuation\">;<\/span>\r\n<\/code><\/pre>\n<p>\u6700\u521d\u306b\u3001db.js\u30d5\u30a1\u30a4\u30eb\u3067\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u30aa\u30d6\u30b8\u30a7\u30af\u30c8\u3092\u30a4\u30f3\u30dd\u30fc\u30c8\u3057\u307e\u3059\u3002\u6b21\u306b\u3001\u30c6\u30fc\u30d6\u30ebsharks\u5185\u306e\u884c\u3092\u524a\u9664\u3059\u308bdeleteRow()\u3092\u5b9a\u7fa9\u3057\u307e\u3059\u3002\u95a2\u6570\u5185\u3067\u3001\u4e3b\u30ad\u30fcID\u3092\u5c55\u958b\u3057\u3001\u5909\u6570id\u306b\u683c\u7d0d\u3057\u307e\u3059\u3002\u6b21\u306b\u30012\u3064\u306e\u5f15\u6570\u3092\u53d6\u308bdb.run()\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002\u6700\u521d\u306e\u5f15\u6570\u306f\u3001\u30c6\u30fc\u30d6\u30ebsharks\u5185\u306e\u884c\u3092\u524a\u9664\u3059\u308bSQL\u30b9\u30c6\u30fc\u30c8\u30e1\u30f3\u30c8DELETE from sharks&#8230;\u3067\u3059\u3002WHERE\u53e5\u306b\u3088\u308a\u3001id\u5909\u6570\u306e\u5024\u3068\u4e00\u81f4\u3059\u308b\u884c\u306e\u307f\u304c\u524a\u9664\u3055\u308c\u307e\u3059\u30022\u3064\u76ee\u306e\u5f15\u6570\u306f\u3001\u884c\u304c\u524a\u9664\u3055\u308c\u305f\u5f8c\u306b\u5b9f\u884c\u3055\u308c\u308b\u30b3\u30fc\u30eb\u30d0\u30c3\u30af\u3067\u3059\u3002\u6210\u529f\u3057\u305f\u5834\u5408\u306f\u3001\u95a2\u6570\u306f\u6210\u529f\u30e1\u30c3\u30bb\u30fc\u30b8\u3092\u30ed\u30b0\u306b\u51fa\u529b\u3057\u307e\u3059\u3002\u305d\u308c\u4ee5\u5916\u306e\u5834\u5408\u306f\u3001\u30a8\u30e9\u30fc\u3092\u30b3\u30f3\u30bd\u30fc\u30eb\u306b\u30ed\u30b0\u3057\u307e\u3059\u3002<\/p>\n<p>\u6700\u5f8c\u306b\u3001deleteRow()\u95a2\u6570\u3092\u547c\u3073\u51fa\u3057\u307e\u3059\u3002<\/p>\n<p>\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3057\u3066\u9589\u3058\u3001\u6b21\u306e\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> deleteData.js <span class=\"token number\">2<\/span><\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>Row with the ID 2 has been deleted<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u6b21\u306b\u3001\u884c\u304c\u524a\u9664\u3055\u308c\u305f\u3053\u3068\u3092\u78ba\u8a8d\u3057\u3066\u304f\u3060\u3055\u3044\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<ol>\n<li data-prefix=\"$\"><span class=\"token function\">node<\/span> listData.js<\/li>\n<\/ol>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>&nbsp;<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>\u30b3\u30de\u30f3\u30c9\u3092\u5b9f\u884c\u3059\u308b\u3068\u3001\u51fa\u529b\u7d50\u679c\u306f\u4ee5\u4e0b\u306e\u3088\u3046\u306b\u8868\u793a\u3055\u308c\u307e\u3059\u3002<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<div class=\"secondary-code-label\" title=\"Output\">Output<\/div>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>{ ID: 1, name: &#8216;sammy&#8217;, color: &#8216;blue&#8217;, weight: 1900 }<\/p>\n<pre class=\"post-pre\"><code><\/code><\/pre>\n<p>ID\u304c2\u306e\u884c\u306f\u7d50\u679c\u306b\u542b\u307e\u308c\u3066\u3044\u307e\u305b\u3093\u3002\u3053\u308c\u306b\u3088\u3063\u3066\u3001\u305d\u306e\u884c\u304c\u524a\u9664\u3055\u308c\u305f\u3053\u3068\u304c\u78ba\u8a8d\u3055\u308c\u307e\u3057\u305f\u3002<\/p>\n<p>\u305d\u308c\u306b\u3088\u308a\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u884c\u3092\u524a\u9664\u3059\u308b\u3053\u3068\u304c\u3067\u304d\u307e\u3059\u3002<\/p>\n<h2>\u7d50\u8ad6<\/h2>\n<p>\u3053\u306e\u8a18\u4e8b\u3067\u306f\u3001node-sqlite3\u30e2\u30b8\u30e5\u30fc\u30eb\u3092\u4f7f\u7528\u3057\u3066Node.js\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u4f5c\u6210\u3057\u3001SQLite\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306b\u63a5\u7d9a\u3057\u3066\u30c6\u30fc\u30d6\u30eb\u3092\u4f5c\u6210\u3057\u307e\u3057\u305f\u3002\u6b21\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5909\u66f4\u3057\u3066\u3001\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u30c7\u30fc\u30bf\u306e\u633f\u5165\u3001\u53d6\u5f97\u3001\u66f4\u65b0\u3092\u884c\u3044\u307e\u3057\u305f\u3002\u6700\u5f8c\u306b\u3001\u30a2\u30d7\u30ea\u30b1\u30fc\u30b7\u30e7\u30f3\u3092\u5909\u66f4\u3057\u3066\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u5185\u306e\u30c7\u30fc\u30bf\u3092\u524a\u9664\u3057\u307e\u3057\u305f\u3002<\/p>\n<p>node-sqlite3\u306e\u30e1\u30bd\u30c3\u30c9\u306b\u3064\u3044\u3066\u3055\u3089\u306a\u308b\u6d1e\u5bdf\u3092\u5f97\u308b\u306b\u306f\u3001node-sqlite3\u306e\u30a6\u30a3\u30ad\u30da\u30fc\u30b8\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002SQLite\u306b\u3064\u3044\u3066\u5b66\u3076\u306b\u306f\u3001SQLite\u306e\u30c9\u30ad\u30e5\u30e1\u30f3\u30c8\u3092\u53c2\u7167\u3057\u3066\u304f\u3060\u3055\u3044\u3002SQLite\u3068\u4ed6\u306eSQL\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u306e\u6bd4\u8f03\u3092\u77e5\u308a\u305f\u3044\u5834\u5408\u306f\u3001\u5f53\u793e\u306e\u30c1\u30e5\u30fc\u30c8\u30ea\u30a2\u30eb\u300cSQLite vs MySQL vs PostgreSQL\uff1a\u30ea\u30ec\u30fc\u30b7\u30e7\u30ca\u30eb\u30c7\u30fc\u30bf\u30d9\u30fc\u30b9\u7ba1\u7406\u30b7\u30b9\u30c6\u30e0\u306e\u6bd4\u8f03\u300d\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002Node.js\u306e\u5b66\u7fd2\u3092\u7d9a\u3051\u308b\u305f\u3081\u306b\u306f\u3001\u300cHow To Code in Node.js \u30b7\u30ea\u30fc\u30ba\u300d\u3092\u3054\u89a7\u304f\u3060\u3055\u3044\u3002<\/p>\n","protected":false},"excerpt":{"rendered":"<p>\u8457\u8005\u306f\u3001Write for Donations\u30d7\u30ed\u30b0\u30e9\u30e0\u306e\u4e00\u74b0\u3068\u3057\u3066\u5bc4\u4ed8\u3092\u53d7\u3051\u308b\u305f\u3081\u306b\/dev\/color\u3092\u9078\u3073\u307e\u3057\u305f\u3002 \u4ee5\u4e0b\u306e\u6587\u7ae0\u3092\u65e5\u672c\u8a9e\u3067\u81ea\u7136\u306b\u8a00\u3044\u63db\u3048\u3066\u304f\u3060\u3055\u3044\u30021\u3064\u306e\u30aa\u30d7\u30b7\u30e7\u30f3\u3067\u5927\u4e08\u592b\u3067\u3059\uff1a \u300cIntroduct [&hellip;]<\/p>\n","protected":false},"author":7,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[58,71,14],"class_list":["post-525","post","type-post","status-publish","format-standard","hentry","category-uncategorized","tag-linux","tag-node-js","tag-14"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5 - Blog - Silicon Cloud<\/title>\n<meta name=\"description\" content=\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04\u3067node-js\u3068sqlite\u3092\u4f7f\u3046\u65b9\u6cd5\/\" \/>\n<meta property=\"og:locale\" content=\"ja_JP\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\" \/>\n<meta property=\"og:description\" content=\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04\u3067node-js\u3068sqlite\u3092\u4f7f\u3046\u65b9\u6cd5\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:published_time\" content=\"2023-09-04T23:23:41+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2025-07-31T15:17:13+00:00\" \/>\n<meta name=\"author\" content=\"\u7d50\u8863, \u6625\u82b1\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"\u57f7\u7b46\u8005\" \/>\n\t<meta name=\"twitter:data1\" content=\"\u7d50\u8863, \u6625\u82b1\" \/>\n\t<meta name=\"twitter:label2\" content=\"\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593\" \/>\n\t<meta name=\"twitter:data2\" content=\"41\u5206\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/\",\"url\":\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/\",\"name\":\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5 - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/#website\"},\"datePublished\":\"2023-09-04T23:23:41+00:00\",\"dateModified\":\"2025-07-31T15:17:13+00:00\",\"author\":{\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/e52a686063ac76fd8cc6f539d41497ac\"},\"description\":\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#breadcrumb\"},\"inLanguage\":\"ja\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"\u9996\u9875\",\"item\":\"https:\/\/www.silicloud.com\/ja\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/ja\/blog\/\",\"name\":\"Blog - Silicon Cloud\",\"description\":\"\",\"inLanguage\":\"ja\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/e52a686063ac76fd8cc6f539d41497ac\",\"name\":\"\u7d50\u8863, \u6625\u82b1\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/c74c6e2eb915a3c8e795b3934aa25a7333e0b38e7f1c7baf52785286ad51105e?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/c74c6e2eb915a3c8e795b3934aa25a7333e0b38e7f1c7baf52785286ad51105e?s=96&d=mm&r=g\",\"caption\":\"\u7d50\u8863, \u6625\u82b1\"},\"url\":\"https:\/\/www.silicloud.com\/ja\/blog\/author\/yuiharuka\/\"},{\"@type\":\"ImageObject\",\"inLanguage\":\"ja\",\"@id\":\"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#local-main-organization-logo\",\"url\":\"\",\"contentUrl\":\"\",\"caption\":\"Blog - Silicon Cloud\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5 - Blog - Silicon Cloud","description":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04\u3067node-js\u3068sqlite\u3092\u4f7f\u3046\u65b9\u6cd5\/","og_locale":"ja_JP","og_type":"article","og_title":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5","og_description":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002","og_url":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04\u3067node-js\u3068sqlite\u3092\u4f7f\u3046\u65b9\u6cd5\/","og_site_name":"Blog - Silicon Cloud","article_published_time":"2023-09-04T23:23:41+00:00","article_modified_time":"2025-07-31T15:17:13+00:00","author":"\u7d50\u8863, \u6625\u82b1","twitter_card":"summary_large_image","twitter_misc":{"\u57f7\u7b46\u8005":"\u7d50\u8863, \u6625\u82b1","\u63a8\u5b9a\u8aad\u307f\u53d6\u308a\u6642\u9593":"41\u5206"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/","url":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/","name":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5 - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/ja\/blog\/#website"},"datePublished":"2023-09-04T23:23:41+00:00","dateModified":"2025-07-31T15:17:13+00:00","author":{"@id":"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/e52a686063ac76fd8cc6f539d41497ac"},"description":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5\u3092\u5206\u304b\u308a\u3084\u3059\u304f\u89e3\u8aac\u3002\u5b9f\u8df5\u7684\u306a\u4f8b\u3068\u30b3\u30fc\u30c9\u3001\u6ce8\u610f\u70b9\u3092\u542b\u3081\u3066\u521d\u5fc3\u8005\u306b\u3082\u7406\u89e3\u3067\u304d\u308b\u3088\u3046\u8aac\u660e\u3057\u307e\u3059\u3002","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#breadcrumb"},"inLanguage":"ja","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"\u9996\u9875","item":"https:\/\/www.silicloud.com\/ja\/blog\/"},{"@type":"ListItem","position":2,"name":"Ubuntu 22.04\u3067Node.js\u3068SQLite\u3092\u4f7f\u3046\u65b9\u6cd5"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/ja\/blog\/#website","url":"https:\/\/www.silicloud.com\/ja\/blog\/","name":"Blog - Silicon Cloud","description":"","inLanguage":"ja"},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/e52a686063ac76fd8cc6f539d41497ac","name":"\u7d50\u8863, \u6625\u82b1","image":{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.silicloud.com\/ja\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/c74c6e2eb915a3c8e795b3934aa25a7333e0b38e7f1c7baf52785286ad51105e?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c74c6e2eb915a3c8e795b3934aa25a7333e0b38e7f1c7baf52785286ad51105e?s=96&d=mm&r=g","caption":"\u7d50\u8863, \u6625\u82b1"},"url":"https:\/\/www.silicloud.com\/ja\/blog\/author\/yuiharuka\/"},{"@type":"ImageObject","inLanguage":"ja","@id":"https:\/\/www.silicloud.com\/ja\/blog\/ubuntu-22-04%e3%81%a7node-js%e3%81%a8sqlite%e3%82%92%e4%bd%bf%e3%81%86%e6%96%b9%e6%b3%95\/#local-main-organization-logo","url":"","contentUrl":"","caption":"Blog - Silicon Cloud"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/posts\/525","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/users\/7"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/comments?post=525"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/posts\/525\/revisions"}],"predecessor-version":[{"id":41732,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/posts\/525\/revisions\/41732"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/media?parent=525"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/categories?post=525"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/ja\/blog\/wp-json\/wp\/v2\/tags?post=525"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}