<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>devkuma – SQLite</title>
    <link>https://www.devkuma.com/jp/tags/sqlite/</link>
    <image>
      <url>https://www.devkuma.com/jp/tags/sqlite/logo/180x180.jpg</url>
      <title>SQLite</title>
      <link>https://www.devkuma.com/jp/tags/sqlite/</link>
    </image>
    <description>Recent content in SQLite on devkuma</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>jp</language>
    <managingEditor>kc@example.com (kc kim)</managingEditor>
    <webMaster>kc@example.com (kc kim)</webMaster>
    <copyright>The devkuma</copyright>
    
	  <atom:link href="https://www.devkuma.com/jp/tags/sqlite/index.xml" rel="self" type="application/rss+xml" />
    
    
      
        
      
    
    
    <item>
      <title>SQLite | SQLite のインストール</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite-install/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite-install/</guid>
      <description>
        
        
        &lt;p&gt;SQLite はデータベースサーバーを使わず、データベースごとに1つのファイルで管理します。データベースサーバーを使わないため、サーバーとして常時起動しておく別のアプリケーションはありません。コマンドラインから使うには、別途コマンドラインインターフェイスのプログラムを使用します。PHP や Ruby on Rails などから使用する場合は DLL が必要です。ここでは、SQLite のコマンドラインプログラムと DLL をダウンロードしてインストールする方法について説明します。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite のインストール | SQLite コマンドラインツールのダウンロードとインストール</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite-%EC%BB%A4%EB%A7%A8%EB%93%9C-%EB%9D%BC%EC%9D%B8-%EB%8F%84%EA%B5%AC-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%84%A4%EC%B9%98/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite-%EC%BB%A4%EB%A7%A8%EB%93%9C-%EB%9D%BC%EC%9D%B8-%EB%8F%84%EA%B5%AC-%EB%8B%A4%EC%9A%B4%EB%A1%9C%EB%93%9C-%EB%B0%8F-%EC%84%A4%EC%B9%98/</guid>
      <description>
        
        
        &lt;p&gt;SQLite をコマンドラインから使用するための、コマンドラインプログラムのダウンロード方法とインストール方法について説明します。2019年10月時点の最新バージョンは SQLite 3.30.1 (2019-10-11) です。&lt;/p&gt;
&lt;h2 id=&#34;sqlite-のダウンロード&#34;&gt;SQLite のダウンロード&lt;/h2&gt;
&lt;p&gt;ブラウザで SQLite の公式ページにアクセスします。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.sqlite.org/&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.sqlite.org/&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_org.png&#34; alt=&#34;sqlite.org&#34;&gt;&lt;/p&gt;
&lt;p&gt;画面上部のメニューから「Download」と書かれたメニューをクリックします。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_download.png&#34; alt=&#34;Sqlite download&#34;&gt;&lt;/p&gt;
&lt;p&gt;使用している OS に合ったツールのバイナリ、たとえば &lt;code&gt;sqlite-tools-xxx&lt;/code&gt; のようなファイル名のファイルをクリックしてダウンロードし、任意の場所に保存します。&lt;/p&gt;
&lt;h2 id=&#34;sqlite-コマンドラインプログラムのインストール&#34;&gt;SQLite コマンドラインプログラムのインストール&lt;/h2&gt;
&lt;p&gt;ダウンロードしたファイルは圧縮ファイルです。任意のディレクトリに展開するだけでインストールは完了です。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ls -al
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;total &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;5016&lt;/span&gt;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x@  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;5&lt;/span&gt; kimkc  staff      &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;170&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;11&lt;/span&gt; 18:32 .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;41&lt;/span&gt; kimkc  staff     &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1394&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;14&lt;/span&gt; 23:41 ..
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1&lt;/span&gt; kimkc  staff   &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;691768&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;11&lt;/span&gt; 18:31 sqldiff
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1&lt;/span&gt; kimkc  staff  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1152260&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;11&lt;/span&gt; 18:32 sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@  &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;1&lt;/span&gt; kimkc  staff   &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;719796&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;10&lt;/span&gt; &lt;span style=&#34;color:#0000cf;font-weight:bold&#34;&gt;11&lt;/span&gt; 18:31 sqlite3_analyzer
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;圧縮ファイルには、コマンドラインツールである &lt;code&gt;sqlite3&lt;/code&gt;、2つのデータベースの差分を確認できる &lt;code&gt;sqldiff&lt;/code&gt;、データベース分析レポートを表示できる &lt;code&gt;sqlite3_analyzer&lt;/code&gt; の3つのファイルが含まれています。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite のインストール | SQLite コマンドラインツールのテスト</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite-cli/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite-cli/</guid>
      <description>
        
        
        &lt;p&gt;ダウンロードした SQLite コマンドラインツールを実際に使い、動作するか確認してみます。&lt;/p&gt;
&lt;h2 id=&#34;コマンドラインツールでデータベースとテーブルを作成する&#34;&gt;コマンドラインツールでデータベースとテーブルを作成する&lt;/h2&gt;
&lt;p&gt;まず、コマンドプロンプトを起動します。&lt;code&gt;PATH&lt;/code&gt; は別途設定していないため、&lt;code&gt;sqlite3&lt;/code&gt; 実行ファイルがあるディレクトリへ移動します。&lt;/p&gt;
&lt;p&gt;データベースを作成してみましょう。コマンドラインツールを使ってデータベースを作成するには、次の形式を使用します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite3 データベース名
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;データベース名を指定して &lt;code&gt;sqlite3&lt;/code&gt; プログラムを実行すると、指定した名前のデータベースがすでに存在する場合はそのデータベースに接続し、存在しない場合は新しいデータベースを作成してから接続します。&lt;/p&gt;
&lt;p&gt;データベース名は何でも構いませんが、指定したデータベース名でファイルが作成されます。たとえば &lt;code&gt;sampledb.sqlite3&lt;/code&gt; や &lt;code&gt;sampledb.db&lt;/code&gt; などです。拡張子なしで &lt;code&gt;sampledb&lt;/code&gt; としても問題ありません。ここでは &lt;code&gt;sample.sqlite3&lt;/code&gt; とします。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite3 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;sample.sqlite3&lt;/code&gt; というデータベースが新しく作成され、データベースに接続されました。ただし、実際にファイルが作成されるのは、データベース内にテーブルなどを作成したときです。SQLite に接続している間は、&lt;code&gt;sqlite&amp;gt;&lt;/code&gt; プロンプトが表示されます。&lt;/p&gt;
&lt;p&gt;次に、データベース内にテーブルを1つ作成してみます。次のように実行します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;create&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;table&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;user&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;id&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;);&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table user(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;テーブルが作成されました。今回はデータベースを作成し、そのデータベース内にテーブルを作成しました。&lt;/p&gt;
&lt;p&gt;データベースとの接続を終了するには、&lt;code&gt;.exit&lt;/code&gt; と入力します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;.exit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table user(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; .exit
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;データベースとの接続が切断されました。&lt;/p&gt;
&lt;h2 id=&#34;データベースが保存されるファイル&#34;&gt;データベースが保存されるファイル&lt;/h2&gt;
&lt;p&gt;データベースを作成したあと、テーブルなどを作成するとデータベースファイルに保存されます。作成場所を別途指定していないため、&lt;code&gt;sqlite3&lt;/code&gt; 実行ファイルがあるディレクトリにデータベースファイルが作成されています。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ls
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sample.sqlite3   sqldiff          sqlite3          sqlite3_analyzer
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;sample.sqlite3&lt;/code&gt; というファイルが新しく作成されていることがわかります。このファイルには、先ほど作成した &lt;code&gt;sample.sqlite3&lt;/code&gt; データベースのデータが保存されています。このように SQLite は、データベースごとに1つのファイルを作成して管理します。ただし、場合によっては複数のファイルを使用することもあります。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite のインストール | sqlite3.dll のダウンロード</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite3-dll-download/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite3-dll-download/</guid>
      <description>
        
        
        &lt;p&gt;SQLite はコマンドラインから使用することもできますが、PHP や Rails など、ほかのアプリケーションから使用されることのほうが多くあります。アプリケーションから使用するには &lt;code&gt;sqlite3.dll&lt;/code&gt; が必要です。ここでは、&lt;code&gt;sqlite3.dll&lt;/code&gt; ファイルをダウンロードする方法について説明します。&lt;/p&gt;
&lt;h2 id=&#34;sqlite3dll-のダウンロード&#34;&gt;sqlite3.dll のダウンロード&lt;/h2&gt;
&lt;p&gt;&lt;code&gt;sqlite3.dll&lt;/code&gt; をダウンロードするには、次の URL にアクセスします。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.sqlite.org/download.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.sqlite.org/download.html&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;ブラウザで SQLite の公式ページにアクセスします。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_download_dll.png&#34; alt=&#34;Sqlite download&#34;&gt;&lt;/p&gt;
&lt;p&gt;Windows 64bit 環境の場合は、「Precompiled Binaries for Windows」ブロックにある &lt;strong&gt;sqlite-dll-win64-x64-3300100.zip&lt;/strong&gt; というリンクをクリックしてダウンロードし、任意の場所に保存します。&lt;/p&gt;
&lt;h2 id=&#34;sqlite3dll-を-path-が設定されたフォルダにコピーする&#34;&gt;sqlite3.dll を PATH が設定されたフォルダにコピーする&lt;/h2&gt;
&lt;p&gt;ダウンロードして保存した &lt;strong&gt;sqlite-dll-win64-x64-3300100.zip&lt;/strong&gt; 圧縮ファイルを展開すると、&lt;code&gt;sqlite3.dll&lt;/code&gt; と &lt;code&gt;sqlite3.def&lt;/code&gt; の2つのファイルが出てきます。このうち &lt;code&gt;sqlite3.dll&lt;/code&gt; ファイルを、&lt;code&gt;PATH&lt;/code&gt; が設定されたフォルダに保存します。たとえば &lt;code&gt;C:\Windows\System32&lt;/code&gt; に入れても構いません。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite3.def sqlite3.dll
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;実際には、PHP をインストールすると SQLite を使用するために必要な DLL も一緒にインストールされています。そのため、必ずしも別途ダウンロードする必要はありません。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/</guid>
      <description>
        
        
        &lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_logo.png&#34; alt=&#34;SQLite&#34;&gt;&lt;/p&gt;
&lt;p&gt;ここでは、データベース SQLite の使い方について説明します。SQLite はデータベースサーバーとしてではなく、主に1つのアプリケーション内で動作します。インストールが簡単で非常にコンパクトなため、アプリケーションと一緒に配布されることも多くあります。ここでは、SQLite を使ってデータベースやテーブルを作成する方法、データを追加または検索する方法を順に説明します。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite のインストール | SQLite ドキュメントの参照</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite-docs/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite-docs/</guid>
      <description>
        
        
        &lt;p&gt;SQLite のドキュメントを参照する方法について説明します。インターネット上で閲覧できるほか、ダウンロードして参照することもできます。&lt;/p&gt;
&lt;h2 id=&#34;オンラインドキュメントを参照する&#34;&gt;オンラインドキュメントを参照する&lt;/h2&gt;
&lt;p&gt;オンラインドキュメントを参照するには、SQLite 公式ページ上部のメニューから「Documentation」をクリックするか、次のリンクを開きます。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.sqlite.org/docs.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.sqlite.org/docs.html&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_1.png&#34; alt=&#34;sqlite documentation&#34;&gt;&lt;/p&gt;
&lt;p&gt;たとえば、「Programming Interfaces」を展開して「SQL Syntax」メニューをクリックします。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_2.png&#34; alt=&#34;sqlite documentation&#34;&gt;&lt;/p&gt;
&lt;p&gt;SQLite で利用できる SQL についての説明を確認できます。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_3.png&#34; alt=&#34;&#34;&gt;&lt;/p&gt;
&lt;p&gt;このほかにも、SQLite に関するさまざまなドキュメントを参照できます。&lt;/p&gt;
&lt;h2 id=&#34;ドキュメントをダウンロードする&#34;&gt;ドキュメントをダウンロードする&lt;/h2&gt;
&lt;p&gt;ドキュメントをローカルにダウンロードしたい場合は、画面上部の「Download」と書かれたメニューをクリックするか、次のリンクを開きます。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.sqlite.org/download.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;https://www.sqlite.org/download.html&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_4.png&#34; alt=&#34;sqlite documentation&#34;&gt;&lt;/p&gt;
&lt;p&gt;「Documentation」ブロックにある「sqlite-doc-3300100.zip」リンクをクリックすると、ドキュメントをダウンロードできます。&lt;/p&gt;
&lt;p&gt;ダウンロードが完了したら、圧縮ファイルを展開します。次のように多数の HTML ファイルが表示されます。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_5.png&#34; alt=&#34;sqlite documentation&#34;&gt;&lt;/p&gt;
&lt;p&gt;ここで &lt;code&gt;index.html&lt;/code&gt; ファイルを探して開いてみましょう。&lt;/p&gt;
&lt;p&gt;&lt;img src=&#34;https://www.devkuma.com/docs/sqlite/sqlite_doc_6.png&#34; alt=&#34;sqlite documentation&#34;&gt;&lt;/p&gt;
&lt;p&gt;インターネット上の公式サイトで見たページと同じ画面が表示されます。画面上部の「Documentation」メニューをクリックすると、オフラインでもドキュメントを参照できるようになります。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite の基礎知識</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/basic/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/basic/</guid>
      <description>
        
        
        &lt;p&gt;SQLite を利用するうえで知っておきたい基礎知識について説明します。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite の基礎知識 | コマンドラインツールで SQL 文とコマンドを入力する方法</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/cli-sql-command/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/cli-sql-command/</guid>
      <description>
        
        
        &lt;p&gt;SQLite では、コマンドラインツールを使ってデータベースを作成したり、データを検索したりできます。ここでは、SQLite コマンドラインツールを使用するときに、どのように入力すればよいかを説明します。&lt;/p&gt;
&lt;h2 id=&#34;コマンドを実行する&#34;&gt;コマンドを実行する&lt;/h2&gt;
&lt;p&gt;SQLite コマンドラインツールを実行するには、コマンドプロンプトを起動したあと、&lt;code&gt;sqlite3&lt;/code&gt; をインストールしたディレクトリへ移動し、次のように実行します。ツールが起動し、引数に指定したデータベースに接続します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite3 データベース名
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;今回は、以前作成した &lt;code&gt;sample.sqlite3&lt;/code&gt; データベースに接続するため、次のように実行します。以前作成したファイルを削除していたり、存在しなかったりしても接続コマンド自体は実行できます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 sample.sqlite3 
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;コマンドラインツールでは、コマンドラインツールの設定を行う SQLite コマンドなどを実行したり、任意の SQL 文を実行したりできます。&lt;/p&gt;
&lt;p&gt;SQLite コマンド &lt;code&gt;.show&lt;/code&gt; を実行してみましょう。コマンドは、必要に応じて引数を入力し、Enter キーを押すと実行されます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 sample.sqlite3 
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; .show
        echo: off
         eqp: off
     explain: auto
     headers: off
        mode: list
   nullvalue: &amp;#34;&amp;#34;
      output: stdout
colseparator: &amp;#34;|&amp;#34;
rowseparator: &amp;#34;\n&amp;#34;
       stats: off
       width: 
    filename: sample.sqlite3
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;sql-文を実行する&#34;&gt;SQL 文を実行する&lt;/h2&gt;
&lt;p&gt;次に、簡単な SQL 文を実行してみます。SQL 文の場合、最後にセミコロン (&lt;code&gt;;&lt;/code&gt;) を入力するまでが1つの SQL 文として処理されます。&lt;code&gt;;&lt;/code&gt; まで入力したあと Enter キーを押すと実行されます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite&amp;gt; create table user(id, name);
sqlite&amp;gt; insert into user(id, name) values (1, &amp;#39;devkuma&amp;#39;);
sqlite&amp;gt; insert into user(id, name) values (2, &amp;#39;araikuma&amp;#39;);
sqlite&amp;gt; select * from user;
1|devkuma
2|araikuma
sqlite&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;以前作成した &lt;code&gt;user&lt;/code&gt; テーブルがすでに存在する場合、最初の行は実行しなくてもかまいません。&lt;/p&gt;
&lt;h2 id=&#34;長い-sql-文を分割して入力する&#34;&gt;長い SQL 文を分割して入力する&lt;/h2&gt;
&lt;p&gt;SQL 文では、1つの文が長くなることがあります。すべての文を一度に入力しようとすると、入力しづらかったり、どこまで入力したのかわかりにくかったりする場合があります。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite&amp;gt; select id as user_id, name as user_name from user where id = 1 and name = &amp;#39;devkuma&amp;#39; order by name desc;
1|devkuma
sqlite&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;このように長い場合、コマンドラインツールでは分割して入力することもできます。入力途中で Enter キーを押します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite&amp;gt; select id as user_id, name as user_name 
   ...&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;SQL 文は、最後に &lt;code&gt;;&lt;/code&gt; が現れるまでが1つの文として判断されます。&lt;code&gt;;&lt;/code&gt; が入力されていない状態で Enter キーを押した場合、まだ入力途中だと判断され、続けて入力できます。&lt;/p&gt;
&lt;p&gt;それでは残りをすべて入力してみましょう。先ほどと同じように、適切なタイミングで Enter キーを押します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite&amp;gt; select id as user_id, name as user_name 
   ...&amp;gt; from user
   ...&amp;gt; where id = 1 and name = &amp;#39;devkuma&amp;#39;
   ...&amp;gt; order by name desc
   ...&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Enter キーを押すときに、空白を1つ入れておく必要はありません。コマンドの途中で Enter キーを押すと、前後の文は自動的に別の単語として処理されます。&lt;/p&gt;
&lt;p&gt;SQL 文の場合、&lt;code&gt;;&lt;/code&gt; を含む行を入力して Enter キーを押した時点で、文の入力が完了したと判断され、SQL 文が実行されます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite&amp;gt; select id as user_id, name as user_name 
   ...&amp;gt; from user
   ...&amp;gt; where id = 1 and name = &amp;#39;devkuma&amp;#39;
   ...&amp;gt; order by name desc
   ...&amp;gt; ;
1|devkuma
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;文を1行で入力した場合も、分割して入力した場合も、結果は同じです。状況に応じて使い分けてください。&lt;/p&gt;
&lt;p&gt;&amp;ndash;&lt;/p&gt;
&lt;p&gt;ここまで、SQLite コマンドラインツールでコマンドや SQL 文をどのように入力するかについて説明しました。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite の基礎知識 | SQLite で定義されているキーワードの注意点</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sqlite-keywords/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sqlite-keywords/</guid>
      <description>
        
        
        &lt;p&gt;SQLite には多くのキーワードが定義されています。これらのキーワードは通常、テーブル名やカラム名などには使用できませんが、適切な書き方をすれば使用できる場合もあります。ここでは、SQLite で定義されているキーワードの注意点とキーワード一覧について説明します。&lt;/p&gt;
&lt;h2 id=&#34;キーワードを識別子として使用する方法&#34;&gt;キーワードを識別子として使用する方法&lt;/h2&gt;
&lt;p&gt;SQLite には多くのキーワードが定義されています。後ほど一覧を示しますが、&lt;code&gt;TABLE&lt;/code&gt; や &lt;code&gt;SELECT&lt;/code&gt; などの単語はキーワードです。キーワードは予約語とも呼ばれます。&lt;/p&gt;
&lt;p&gt;テーブル名やデータベース名は識別子と呼ばれます。識別子は、アルファベットや数字などを組み合わせて指定できます。たとえば、&lt;code&gt;booktable&lt;/code&gt; や &lt;code&gt;name&lt;/code&gt; などは使用できます。ただし、SQLite のキーワードはそのまま識別子として使用できません。たとえば、&lt;code&gt;select&lt;/code&gt; をテーブル名として使用しようとするとエラーが発生します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;create&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;table&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;select&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;id&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;);&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table select(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Error: near &amp;#34;select&amp;#34;: syntax error
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;キーワードをテーブル名やデータベース名などに使用することは、できるだけ避けたほうがよいでしょう。ただし、何らかの理由でキーワードを識別子として使用する必要がある場合は、次の4つの方法のいずれかを使用します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;keyword&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;keyword&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;[&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;keyword&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;]&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;`&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;keyword&lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;`&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;キーワードをシングルクォート (&lt;code&gt;&#39;&lt;/code&gt;) で囲むと文字列値として処理されます。識別子を書くべき場所にシングルクォートで囲んだ文字列値を書くと識別子として処理されるため、次のように指定できます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;create&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;table&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#39;select&amp;#39;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;id&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;);&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table &amp;#39;select&amp;#39;(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;キーワードをダブルクォート (&lt;code&gt;&amp;quot;&lt;/code&gt;)、角括弧 (&lt;code&gt;[]&lt;/code&gt;)、バッククォート (&lt;code&gt;`&lt;/code&gt;) で囲んだ場合は識別子として処理されます。また、文字列を書くべき場所にダブルクォートで囲んだ識別子を書くと文字列として処理されます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;create&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;table&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#4e9a06&#34;&gt;&amp;#34;select&amp;#34;&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;(&lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;id&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;,&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#000&#34;&gt;name&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;);&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table &amp;#34;select&amp;#34;(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Error: table &amp;#34;select&amp;#34; already exists
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; drop table &amp;#39;select&amp;#39;;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; create table &amp;#34;select&amp;#34;(id, name);
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;角括弧は Access や SQL Server で使用される方式で、バッククォートは MySQL で使用される方式です。この2つの方式は、それぞれのデータベースとの互換性のために用意されています。そのため、通常はシングルクォートまたはダブルクォートを使用します。&lt;/p&gt;
&lt;h2 id=&#34;キーワード一覧&#34;&gt;キーワード一覧&lt;/h2&gt;
&lt;p&gt;SQLite のキーワードとして定義されているものを以下に示します。これは次の公式サイトに掲載されています。&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://www.sqlite.org/lang_keywords.html&#34; target=&#34;_blank&#34; rel=&#34;noopener&#34;&gt;SQLite Keywords&lt;i class=&#34;fas fa-external-link-alt&#34;&gt;&lt;/i&gt;&lt;/a&gt;&lt;/p&gt;
&lt;table&gt;
  &lt;thead&gt;
      &lt;tr&gt;
          &lt;th&gt;ABORT&lt;/th&gt;
          &lt;th&gt;ACTION&lt;/th&gt;
          &lt;th&gt;ADD&lt;/th&gt;
          &lt;th&gt;AFTER&lt;/th&gt;
          &lt;th&gt;ALL&lt;/th&gt;
      &lt;/tr&gt;
  &lt;/thead&gt;
  &lt;tbody&gt;
      &lt;tr&gt;
          &lt;td&gt;ALTER&lt;/td&gt;
          &lt;td&gt;ANALYZE&lt;/td&gt;
          &lt;td&gt;AND&lt;/td&gt;
          &lt;td&gt;AS&lt;/td&gt;
          &lt;td&gt;ASC&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ATTACH&lt;/td&gt;
          &lt;td&gt;AUTOINCREMENT&lt;/td&gt;
          &lt;td&gt;BEFORE&lt;/td&gt;
          &lt;td&gt;BEGIN&lt;/td&gt;
          &lt;td&gt;BETWEEN&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;BY&lt;/td&gt;
          &lt;td&gt;CASCADE&lt;/td&gt;
          &lt;td&gt;CASE&lt;/td&gt;
          &lt;td&gt;CAST&lt;/td&gt;
          &lt;td&gt;CHECK&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;COLLATE&lt;/td&gt;
          &lt;td&gt;COLUMN&lt;/td&gt;
          &lt;td&gt;COMMIT&lt;/td&gt;
          &lt;td&gt;CONFLICT&lt;/td&gt;
          &lt;td&gt;CONSTRAINT&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;CREATE&lt;/td&gt;
          &lt;td&gt;CROSS&lt;/td&gt;
          &lt;td&gt;CURRENT&lt;/td&gt;
          &lt;td&gt;CURRENT_DATE&lt;/td&gt;
          &lt;td&gt;CURRENT_TIME&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;CURRENT_TIMESTAMP&lt;/td&gt;
          &lt;td&gt;DATABASE&lt;/td&gt;
          &lt;td&gt;DEFAULT&lt;/td&gt;
          &lt;td&gt;DEFERRABLE&lt;/td&gt;
          &lt;td&gt;DEFERRED&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;DELETE&lt;/td&gt;
          &lt;td&gt;DESC&lt;/td&gt;
          &lt;td&gt;DETACH&lt;/td&gt;
          &lt;td&gt;DISTINCT&lt;/td&gt;
          &lt;td&gt;DO&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;DROP&lt;/td&gt;
          &lt;td&gt;EACH&lt;/td&gt;
          &lt;td&gt;ELSE&lt;/td&gt;
          &lt;td&gt;END&lt;/td&gt;
          &lt;td&gt;ESCAPE&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;EXCEPT&lt;/td&gt;
          &lt;td&gt;EXCLUSIVE&lt;/td&gt;
          &lt;td&gt;EXISTS&lt;/td&gt;
          &lt;td&gt;EXPLAIN&lt;/td&gt;
          &lt;td&gt;FAIL&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;FILTER&lt;/td&gt;
          &lt;td&gt;FOLLOWING&lt;/td&gt;
          &lt;td&gt;FOR&lt;/td&gt;
          &lt;td&gt;FOREIGN&lt;/td&gt;
          &lt;td&gt;FROM&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;FULL&lt;/td&gt;
          &lt;td&gt;GLOB&lt;/td&gt;
          &lt;td&gt;GROUP&lt;/td&gt;
          &lt;td&gt;HAVING&lt;/td&gt;
          &lt;td&gt;IF&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;IGNORE&lt;/td&gt;
          &lt;td&gt;IMMEDIATE&lt;/td&gt;
          &lt;td&gt;IN&lt;/td&gt;
          &lt;td&gt;INDEX&lt;/td&gt;
          &lt;td&gt;INDEXED&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;INITIALLY&lt;/td&gt;
          &lt;td&gt;INNER&lt;/td&gt;
          &lt;td&gt;INSERT&lt;/td&gt;
          &lt;td&gt;INSTEAD&lt;/td&gt;
          &lt;td&gt;INTERSECT&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;INTO&lt;/td&gt;
          &lt;td&gt;IS&lt;/td&gt;
          &lt;td&gt;ISNULL&lt;/td&gt;
          &lt;td&gt;JOIN&lt;/td&gt;
          &lt;td&gt;KEY&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;LEFT&lt;/td&gt;
          &lt;td&gt;LIKE&lt;/td&gt;
          &lt;td&gt;LIMIT&lt;/td&gt;
          &lt;td&gt;MATCH&lt;/td&gt;
          &lt;td&gt;NATURAL&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;NO&lt;/td&gt;
          &lt;td&gt;NOT&lt;/td&gt;
          &lt;td&gt;NOTHING&lt;/td&gt;
          &lt;td&gt;NOTNULL&lt;/td&gt;
          &lt;td&gt;NULL&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;OF&lt;/td&gt;
          &lt;td&gt;OFFSET&lt;/td&gt;
          &lt;td&gt;ON&lt;/td&gt;
          &lt;td&gt;OR&lt;/td&gt;
          &lt;td&gt;ORDER&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;OUTER&lt;/td&gt;
          &lt;td&gt;OVER&lt;/td&gt;
          &lt;td&gt;PARTITION&lt;/td&gt;
          &lt;td&gt;PLAN&lt;/td&gt;
          &lt;td&gt;PRAGMA&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;PRECEDING&lt;/td&gt;
          &lt;td&gt;PRIMARY&lt;/td&gt;
          &lt;td&gt;QUERY&lt;/td&gt;
          &lt;td&gt;RAISE&lt;/td&gt;
          &lt;td&gt;RANGE RECURSIVE&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;REFERENCES&lt;/td&gt;
          &lt;td&gt;REGEXP&lt;/td&gt;
          &lt;td&gt;REINDEX&lt;/td&gt;
          &lt;td&gt;RELEASE&lt;/td&gt;
          &lt;td&gt;RENAME&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;REPLACE&lt;/td&gt;
          &lt;td&gt;RESTRICT&lt;/td&gt;
          &lt;td&gt;RIGHT&lt;/td&gt;
          &lt;td&gt;ROLLBACK&lt;/td&gt;
          &lt;td&gt;ROW&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;ROWS&lt;/td&gt;
          &lt;td&gt;SAVEPOINT&lt;/td&gt;
          &lt;td&gt;SELECT&lt;/td&gt;
          &lt;td&gt;SET&lt;/td&gt;
          &lt;td&gt;TABLE&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TEMP&lt;/td&gt;
          &lt;td&gt;TEMPORARY&lt;/td&gt;
          &lt;td&gt;THEN&lt;/td&gt;
          &lt;td&gt;TO&lt;/td&gt;
          &lt;td&gt;TRANSACTION&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;TRIGGER&lt;/td&gt;
          &lt;td&gt;UNBOUNDED&lt;/td&gt;
          &lt;td&gt;UNION&lt;/td&gt;
          &lt;td&gt;UNIQUE&lt;/td&gt;
          &lt;td&gt;UPDATE&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;USING&lt;/td&gt;
          &lt;td&gt;VACUUM&lt;/td&gt;
          &lt;td&gt;VALUES&lt;/td&gt;
          &lt;td&gt;VIEW&lt;/td&gt;
          &lt;td&gt;VIRTUAL&lt;/td&gt;
      &lt;/tr&gt;
      &lt;tr&gt;
          &lt;td&gt;WHEN&lt;/td&gt;
          &lt;td&gt;WHERE&lt;/td&gt;
          &lt;td&gt;WINDOW&lt;/td&gt;
          &lt;td&gt;WITH&lt;/td&gt;
          &lt;td&gt;WITHOUT&lt;/td&gt;
      &lt;/tr&gt;
  &lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;これらのキーワードの中には、シングルクォートやダブルクォートなどで囲まなくても識別子として使用できるものもあります。ただし、キーワードをそのまま識別子として使用するとわかりにくくなるため、あまり望ましい方法ではありません。&lt;/p&gt;
&lt;p&gt;テーブルなどを作成するときに原因不明のエラーが発生した場合は、テーブル名やカラム名がキーワードになっていないか確認してみてください。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | SQLite の基礎知識 | SQL 文にコメントを書く</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/sql-comment/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/sql-comment/</guid>
      <description>
        
        
        &lt;p&gt;SQL 文にコメントを構成する形式について説明します。&lt;/p&gt;
&lt;h2 id=&#34;コメントを書く&#34;&gt;コメントを書く&lt;/h2&gt;
&lt;p&gt;SQL 文に何らかの意見や説明を残したい場合など、SQLite で SQL 文にコメントを追加するには次の2つの方法があります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;-- コメント
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;/* コメント */&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;コメントが書かれていても、SQL 文を実行するときには無視されるため、実行結果には影響しません。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;-- コメント&lt;/code&gt; 形式でコメントを書く場合、&lt;code&gt;--&lt;/code&gt; から行末までに書かれた文字列がコメントになります。たとえば、次のように書きます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;select&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;*&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;from&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;user&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;-- 一覧
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; select * from user; -- 一覧
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;1|devkuma
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;2|araikuma
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;&lt;code&gt;/* コメント */&lt;/code&gt; のような形式でコメントを書く場合、&lt;code&gt;/*&lt;/code&gt; から &lt;code&gt;*/&lt;/code&gt; までに書かれた文字列がコメントになります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-sql&#34; data-lang=&#34;sql&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;select&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#ce5c00;font-weight:bold&#34;&gt;*&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;from&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#8f5902;font-style:italic&#34;&gt;/* コメント */&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt; &lt;/span&gt;&lt;span style=&#34;color:#204a87;font-weight:bold&#34;&gt;user&lt;/span&gt;&lt;span style=&#34;color:#000;font-weight:bold&#34;&gt;;&lt;/span&gt;&lt;span style=&#34;color:#f8f8f8&#34;&gt;
&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; select * from /* コメント */ user;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;1|devkuma
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;2|araikuma
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;コマンドラインツールでコメントを書く機会はそれほど多くないかもしれませんが、複数の SQL 文を外部ファイルに書いておき、それを取り込んで SQLite で実行する場合には、コメントを書いておくとよいでしょう。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | データベース</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/database/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/database/</guid>
      <description>
        
        
        &lt;p&gt;SQLite3 を使ってデータベースを作成する方法と、作成したデータベースを削除する方法について説明します。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | データベース | データベースの作成と接続</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/create-connect-database/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/create-connect-database/</guid>
      <description>
        
        
        &lt;p&gt;SQLite データベースを新しく作成する方法と、作成済みのデータベースに接続する方法について説明します。&lt;/p&gt;
&lt;h2 id=&#34;データベースの作成&#34;&gt;データベースの作成&lt;/h2&gt;
&lt;p&gt;データベースを新しく作成するには、コマンドプロンプトで次のように入力します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite3 データベース名
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;たとえば、&lt;code&gt;myfriend.sqlite3&lt;/code&gt; というデータベースを作成するとします。コマンドプロンプトを起動し、&lt;code&gt;sqlite3&lt;/code&gt; ファイルがあるディレクトリへ移動してから、次のように実行します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースが存在しない場合、新しいデータベース &lt;code&gt;myfriend.sqlite3&lt;/code&gt; が作成され、作成されたデータベースへそのまま接続されます。&lt;/p&gt;
&lt;p&gt;データベースに接続された状態なので、テーブルなどをデータベース内に作成できます。何も作成しないとデータベースファイルは実際には作成されないため、ここでは簡単なテーブルを作成してみます。テーブルを作成する詳しい方法は別のページで説明します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; create table customer (id, name);
$
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;コマンドラインツールを終了するには &lt;code&gt;.exit&lt;/code&gt; と入力します。これで接続中のデータベースから切断されます。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;.exit
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;実際に確認してみましょう。まず &lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースに接続し、&lt;code&gt;.exit&lt;/code&gt; を入力します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt;.exit
$
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;次に、&lt;code&gt;sqlite3&lt;/code&gt; が作成したデータベースファイルを確認します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ ls
myfriend.sqlite3 sample.sqlite3   sqldiff          sqlite3          sqlite3_analyzer
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;データベース名として指定した名前と同じ名前のファイルが作成されています。SQLite では、このようにデータベースを作成すると同じ名前のファイルが作成され、データベースに含まれるすべてのデータがこのファイルに保存されます。&lt;/p&gt;
&lt;p&gt;また、&lt;code&gt;sqlite3&lt;/code&gt; ファイルがあるディレクトリ以外の場所にデータベースファイルを作成したい場合は、次のようにパスと一緒に指定します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite3 パス/データベース名
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;たとえば、絶対パス &lt;code&gt;/Users/devkuma/sqlite/test&lt;/code&gt; ディレクトリに &lt;code&gt;sample.sqlite3&lt;/code&gt; データベースを作成するには、次のように実行します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 /Users/devkuma/sqlite/test/sample.sqlite3
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id=&#34;データベース名について&#34;&gt;データベース名について&lt;/h2&gt;
&lt;p&gt;データベース名には任意の名前を指定できます。先ほどは &lt;code&gt;myfriend.sqlite3&lt;/code&gt; と指定しましたが、どのような形式でもかまいません。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;myfriend
myfriend.db
myfriend.sqlite
myfriend.sqlite3
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;データベースを作成すると、SQLite はデータベース名と同じ名前のファイルを作成してデータを保存します。たとえばデータベース名が &lt;code&gt;myfriend&lt;/code&gt; の場合、作成されるファイル名も &lt;code&gt;myfriend&lt;/code&gt; となり、拡張子のないファイルが作成されるため、後から見たときに何のファイルなのか分かりにくくなります。&lt;/p&gt;
&lt;p&gt;そのため、データベース名を決めるときは、データベースが保存されるファイル名も考慮して指定するとよいでしょう。一般的にどの拡張子が使われるかはいくつかありますが、ここでは &lt;code&gt;.sqlite3&lt;/code&gt; 拡張子に統一します。&lt;/p&gt;
&lt;h2 id=&#34;データベースへの接続&#34;&gt;データベースへの接続&lt;/h2&gt;
&lt;p&gt;データベースに対してさまざまな操作を行うには、まずデータベースに接続する必要があります。新規データベースを作成した場合は作成と同時に接続されますが、すでに作成済みのデータベースに接続するには、コマンドプロンプトで次のように入力します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;sqlite3 データベース名
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;見て分かるように、新しいデータベースを作成するときと同じ形式です。引数にすでに存在するデータベース名を指定すると、新しいデータベースは作成されず、引数に指定したデータベースに接続されます。&lt;/p&gt;
&lt;p&gt;それでは、先ほど作成した &lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースに接続してみましょう。コマンドプロンプトを起動し、&lt;code&gt;sqlite3&lt;/code&gt; があるディレクトリへ移動してから、次のように実行します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
&lt;/code&gt;&lt;/pre&gt;&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;新しいデータベースが作成されたのではなく、既存のデータベースに接続されていることを確認するため、既存のデータベースに作成したテーブルを &lt;code&gt;.tables&lt;/code&gt; コマンドで確認します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;.tables
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;実際に確認してみましょう。まず &lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースに接続し、&lt;code&gt;.tables&lt;/code&gt; を入力します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; .tables
customer
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;customer&lt;/code&gt; テーブルが作成されていることを確認できます。このように、新しいデータベースを作成する場合と既存のデータベースに接続する場合は、同じコマンドと同じ形式を使うため注意してください。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | データベース | 接続中のデータベースを確認する</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/check-connected-databases/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/check-connected-databases/</guid>
      <description>
        
        
        &lt;p&gt;SQLite で現在接続しているデータベースと、そのデータベースが保存されているファイル名の情報を確認する方法について説明します。&lt;/p&gt;
&lt;h2 id=&#34;接続中のデータベースの情報&#34;&gt;接続中のデータベースの情報&lt;/h2&gt;
&lt;p&gt;データベースに接続しているとき、現在接続しているデータベース名と、データベースが保存されているファイル名を確認するには、SQLite コマンド &lt;code&gt;.databases&lt;/code&gt; を使用します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;.databases
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;実際に確認してみましょう。まず &lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースに接続し、&lt;code&gt;.databases&lt;/code&gt; を入力します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; .databases
main: /Users/devkuma/sqlite/myfriend.sqlite3
sqlite&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;次のように画面に表示されました。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;main&lt;/code&gt; がデータベース名です。そして &lt;code&gt;/Users/devkuma/sqlite/myfriend.sqlite3&lt;/code&gt; がデータベースを保存しているファイル名です。&lt;/p&gt;
&lt;p&gt;データベース名と言うと分かりにくいかもしれませんが、&lt;code&gt;main&lt;/code&gt; はテーブル名やカラム名と同じように、SQL 文でデータベース名を指定する必要がある場合に使われる名前です。&lt;code&gt;sqlite3 データベース名&lt;/code&gt; で接続したデータベースには、自動的に &lt;code&gt;main&lt;/code&gt; というデータベース名が指定されます。つまり、データベース名が &lt;code&gt;main&lt;/code&gt; の項目が接続中のデータベースです。&lt;/p&gt;
&lt;p&gt;この &lt;code&gt;main&lt;/code&gt; という名前は気になるかもしれませんが、今は無視してかまいません。詳しい説明はここでは行いませんが、接続されたデータベースがある場合、&lt;code&gt;.databases&lt;/code&gt; コマンドを実行すると同じように一覧へ表示されます。表示されるデータベース名は、接続時に指定した名前です。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt; 
sqlite&amp;gt; attach database &amp;#39;myaddress.sqlite3&amp;#39; as address;
sqlite&amp;gt; 
main: /Users/devkuma/sqlite/myfriend.sqlite3
address: /Users/devkuma/sqlite/myaddress.sqlite3
sqlite&amp;gt; 
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;このように &lt;code&gt;.databases&lt;/code&gt; コマンドを使用すると、現在接続されているデータベースの情報を確認できます。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | データベース | データベースのバックアップと削除</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/database-backup-delete/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/database-backup-delete/</guid>
      <description>
        
        
        &lt;p&gt;SQLite で作成したデータベースファイルをコピーしてバックアップする方法と、データベースを削除する方法について説明します。&lt;/p&gt;
&lt;h2 id=&#34;データベースのバックアップ&#34;&gt;データベースのバックアップ&lt;/h2&gt;
&lt;p&gt;SQLite ではデータベースごとに1つのファイルを作成し、すべての情報はそのファイルに保存されます。そのため、特定のデータベースをバックアップするには、そのデータベースが使用しているファイルを単純にコピーすればよいです。&lt;/p&gt;
&lt;p&gt;実際に確認してみましょう。現在 &lt;code&gt;myfriend.sqlite3&lt;/code&gt; データベースが作成されているものとして、このデータベースに接続します。&lt;/p&gt;
&lt;pre tabindex=&#34;0&#34;&gt;&lt;code&gt;$ sqlite3 myfriend.sqlite3
SQLite version 3.19.3 2017-06-27 16:48:08
Enter &amp;#34;.help&amp;#34; for usage hints.
sqlite&amp;gt;
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;&lt;code&gt;.tables&lt;/code&gt; コマンドを実行してデータベースに作成されているテーブルを確認すると、&lt;code&gt;customer&lt;/code&gt; というテーブルが作成されています。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 myfriend.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; .tables
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;customer
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;それではデータベースとの接続を切断します。そして &lt;code&gt;myfriend.sqlite3&lt;/code&gt; ファイルをコピーし、別名の &lt;code&gt;myfriendbackup.sqlite3&lt;/code&gt; として保存します。ファイル名は任意です。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ cp myfriend.sqlite3 myfriendbackup.sqlite3 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;これで既存のデータベースと同じデータベースが作成されました。次に、バックアップとして作成した &lt;code&gt;myfriendbackup.sqlite3&lt;/code&gt; データベースに接続し、&lt;code&gt;.tables&lt;/code&gt; コマンドを実行してデータベースに作成されているテーブル一覧を表示してみます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 myfriendbackup.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; .tables
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;customer
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;既存のデータベースと同じテーブルが作成されていることを確認できます。簡単な確認だけですが、データベースが複製されていることが分かります。このように SQLite では、データベースのデータが含まれるファイルをコピーするだけでバックアップできます。&lt;/p&gt;
&lt;p&gt;この方法だけでなく、バックアップを行う方法として &lt;code&gt;.backup&lt;/code&gt; コマンドと &lt;code&gt;.restore&lt;/code&gt; コマンドを使用する「バックアップと復元」も用意されています。&lt;/p&gt;
&lt;h2 id=&#34;データベースの削除&#34;&gt;データベースの削除&lt;/h2&gt;
&lt;p&gt;SQLite ではデータベースごとに1つのファイルとして独立して管理しているため、データベースを削除するには、データベースを保存しているファイルを削除します。SQLite 側で別途行うことはありません。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
    <item>
      <title>SQLite | データベース | 空き領域の整理 (VACUUM)</title>
      <link>https://www.devkuma.com/jp/docs/sqlite/database-vacuum/</link>
      <pubDate>Mon, 14 Oct 2019 23:19:51 +0900</pubDate>
      <author>kc@example.com (kc kim)</author>
      <guid>https://www.devkuma.com/jp/docs/sqlite/database-vacuum/</guid>
      <description>
        
        
        &lt;p&gt;SQLite データベースでデータの追加や削除を繰り返していると、保存されているデータ量に比べてファイルサイズが大きくなることがあります。ここでは、VACUUM 文を使用して未使用領域を回収する方法について説明します。&lt;/p&gt;
&lt;h2 id=&#34;vacuum-の使用&#34;&gt;VACUUM の使用&lt;/h2&gt;
&lt;p&gt;SQLite データベースを作成すると1つのファイルが作成され、テーブルや保存されたデータはそのファイルに保存されます。テーブルにデータを追加していくとデータベースファイルのサイズも少しずつ大きくなりますが、テーブルからデータを削除しても、データベースファイルのサイズはすぐには小さくなりません。ファイル内で使用されていた領域はすぐに削除されるのではなく、次にデータが追加されたときに再利用するために残されるためです。&lt;/p&gt;
&lt;p&gt;通常は気にする必要はありませんが、ファイルサイズが気になる場合は、VACUUM 文を実行して未使用領域を回収し、ファイルサイズを小さくできます。&lt;/p&gt;
&lt;p&gt;VACUUM 文は次のように実行します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;VACUUM;
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;VACUUM 文を実行すると、データベースの内容を一度一時データベースへ移し、その後で戻す処理が行われます。これにより空き領域をなくし、データを順番に保存し直して整理します。&lt;/p&gt;
&lt;p&gt;注意点として、VACUUM の対象になるのは &lt;code&gt;main&lt;/code&gt; データベースだけです。接続されたデータベースは VACUUM の対象になりません。また、INTEGER PRIMARY KEY が設定されたカラムがないテーブルの場合、保存されているデータに割り当てられた ROWID は変更されることがあります。&lt;/p&gt;
&lt;h2 id=&#34;実習&#34;&gt;実習&lt;/h2&gt;
&lt;p&gt;それでは実習してみます。次のように、データベースのファイルサイズが 16,384 バイトの &lt;code&gt;sample.sqlite3&lt;/code&gt; ファイルがあります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ls -al
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;total 5048
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x@ 7 kimkc  staff      238 10 19 23:20 .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  9 kimkc  staff      306 10 17 23:49 ..
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  6 kimkc  staff      204 10 19 23:20 bak
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rw-r--r--  1 kimkc  staff    16384 10 19 23:20 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   691768 10 11 18:31 sqldiff
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff  1152260 10 11 18:32 sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   719796 10 11 18:31 sqlite3_analyzer
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;データベースに接続し、データベース内にあるテーブルを1つ削除します。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 sample.sqlite3 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; .tables
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;select    user      username
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; drop table user;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;テーブルを削除してからデータベースのファイルサイズを確認すると、削除前と変わらず 16,384 バイトのままです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ls -al
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;total 5048
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x@ 7 kimkc  staff      238 10 19 23:24 .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  9 kimkc  staff      306 10 17 23:49 ..
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  6 kimkc  staff      204 10 19 23:20 bak
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rw-r--r--  1 kimkc  staff    16384 10 19 23:24 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   691768 10 11 18:31 sqldiff
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff  1152260 10 11 18:32 sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   719796 10 11 18:31 sqlite3_analyzer
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;このように、テーブルやデータを削除しても、すぐにデータベースのファイルサイズが小さくなるわけではありません。それでは、データベースに再度接続して VACUUM 文を実行してみましょう。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ sqlite3 sample.sqlite3 
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;SQLite version 3.19.3 2017-06-27 16:48:08
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;Enter &amp;#34;.help&amp;#34; for usage hints.
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; vacuum;
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;sqlite&amp;gt; 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;VACUUM 文を実行した後にデータベースのファイルサイズを確認すると、12,288 バイトに小さくなっていることが分かります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;pre tabindex=&#34;0&#34; style=&#34;background-color:#f8f8f8;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-text-size-adjust:none;&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;$ ls -al
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;total 5040
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x@ 7 kimkc  staff      238 10 19 23:29 .
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  9 kimkc  staff      306 10 17 23:49 ..
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;drwxr-xr-x  6 kimkc  staff      204 10 19 23:20 bak
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rw-r--r--  1 kimkc  staff    12288 10 19 23:29 sample.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   691768 10 11 18:31 sqldiff
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff  1152260 10 11 18:32 sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;-rwxr-xr-x@ 1 kimkc  staff   719796 10 11 18:31 sqlite3_analyzer
&lt;/span&gt;&lt;/span&gt;&lt;span style=&#34;display:flex;&#34;&gt;&lt;span&gt;kimkcui-MacBook-Pro:sqlite-tools-osx-x86-3300100 kimkc$ 
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;p&gt;このように VACUUM を実行すると、未使用領域を回収してファイルサイズを小さくできます。ファイルサイズが気になる場合は VACUUM を実行しましょう。&lt;/p&gt;

      </description>
      
      <category>SQLite</category>
      
      <category>Database</category>
      
    </item>
    
  </channel>
</rss>
