<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>7.2.21. table_create — groonga v1.2.6 documentation</title> <link rel="stylesheet" href="../_static/groonga.css" type="text/css" /> <link rel="stylesheet" href="../_static/pygments.css" type="text/css" /> <script type="text/javascript"> var DOCUMENTATION_OPTIONS = { URL_ROOT: '../', VERSION: '1.2.6', COLLAPSE_INDEX: false, FILE_SUFFIX: '.html', HAS_SOURCE: true }; </script> <script type="text/javascript" src="../_static/jquery.js"></script> <script type="text/javascript" src="../_static/underscore.js"></script> <script type="text/javascript" src="../_static/doctools.js"></script> <link rel="shortcut icon" href="../_static/favicon.ico"/> <link rel="top" title="groonga v1.2.6 documentation" href="../index.html" /> <link rel="up" title="7.2. コマンド" href="../commands.html" /> <link rel="next" title="7.2.22. table_list" href="table_list.html" /> <link rel="prev" title="7.2.20. suggest" href="suggest.html" /> </head> <body> <div class="header"> <h1 class="title"> <a id="top-link" href="../index.html"> <span class="project">groonga</span> <span class="separator">-</span> <span class="description">An open-source fulltext search engine and column store.</span> </a> </h1> <div class="other-language-links"> <ul> <li><a href="../../../ja/html/commands/table_create.html"><img src="../_static/jp.png" alt="日本語"></a></li> </ul> </div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" accesskey="I">index</a></li> <li class="right" > <a href="table_list.html" title="7.2.22. table_list" accesskey="N">next</a> |</li> <li class="right" > <a href="suggest.html" title="7.2.20. suggest" accesskey="P">previous</a> |</li> <li><a href="../index.html">groonga v1.2.6 documentation</a> »</li> <li><a href="../reference.html" >7. リファレンスマニュアル</a> »</li> <li><a href="../commands.html" accesskey="U">7.2. コマンド</a> »</li> </ul> </div> <div class="document"> <div class="documentwrapper"> <div class="bodywrapper"> <div class="body"> <div class="section" id="table-create"> <h1>7.2.21. table_create<a class="headerlink" href="#table-create" title="Permalink to this headline">¶</a></h1> <div class="section" id="id1"> <h2>7.2.21.1. 名前<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2> <p>table_create - テーブルの追加</p> </div> <div class="section" id="id2"> <h2>7.2.21.2. 書式<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h2> <div class="highlight-none"><div class="highlight"><pre>table_create name [flags [key_type [value_type [default_tokenizer]]]] </pre></div> </div> </div> <div class="section" id="id3"> <h2>7.2.21.3. 説明<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h2> <p>groonga組込コマンドの一つであるtable_createについて説明します。組込コマンドは、groonga実行ファイルの引数、標準入力、またはソケット経由でgroongaサーバにリクエストを送信することによって実行します。</p> <p>table_createコマンドは、使用しているデータベースに対してテーブルを追加します。groongaには名前付きテーブルと名前なしテーブル、永続テーブルと一時テーブルがありますが、table_createコマンドでは、名前付きの永続テーブルのみが作成できます。テーブルはレコードの集合であり、全てのレコードは一意なIDを持ちます。IDはレコードを追加した順序に従って自動的に付与されます。</p> <p>テーブルにカラムを追加する時にはcolumn_createコマンドを使用します。また、テーブルを作成した時点でいくつかの疑似カラムが使用可能になっています。</p> </div> <div class="section" id="id4"> <h2>7.2.21.4. 引数<a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h2> <p><tt class="docutils literal"><span class="pre">name</span></tt></p> <blockquote> <div>作成するテーブルの名前を指定します。nameはデータベース内で一意な、未定義の名前でなければなりません。組込型名・組込コマンド名・組込関数名は予約済みであり、テーブル名には 使用できません。また、ピリオド('.'), コロン(':')を含む名前のテーブルは作成できません。</div></blockquote> <p><tt class="docutils literal"><span class="pre">flags</span></tt></p> <blockquote> <div><p>作成するテーブルの属性を示す数値か、パイプ('|')で組み合わせたシンボル名を指定します。(デフォルト値は0(="TABLE_HASH_KEY"))</p> <blockquote> <div><dl class="docutils"> <dt>0, <tt class="docutils literal"><span class="pre">TABLE_HASH_KEY</span></tt></dt> <dd>主キー値をハッシュ表で管理するテーブルを作成します。ハッシュ表を使用したテーブルでは、主キー値に完全一致するレコードを高速に検索することができます。</dd> <dt>1, <tt class="docutils literal"><span class="pre">TABLE_PAT_KEY</span></tt></dt> <dd>主キー値をパトリシア木で管理するテーブルを作成します。パトリシア木を使用したテーブルでは、主キー値に完全一致するレコード、前方一致するレコード、および最長共通接頭辞となるレコードを高速に検索することができます。また、キー値の昇降順でレコードを取り出したり、キー値の範囲での検索を行うことができます。また、flagsの値に64を加えることによって、後方一致検索も可能となります。</dd> <dt>3, <tt class="docutils literal"><span class="pre">TABLE_NO_KEY</span></tt></dt> <dd>主キーを持たないテーブルを作成します。各レコードはIDのみによって特定することができます。</dd> <dt>4, <tt class="docutils literal"><span class="pre">TABLE_VIEW</span></tt></dt> <dd>複数のテーブルをまとめて操作するための仮想的なテーブル(view)を作成します。</dd> <dt>64, <tt class="docutils literal"><span class="pre">KEY_WITH_SIS</span></tt></dt> <dd>語彙表となるパトリシア木型のテーブルにおいて、後方一致検索を可能とします。</dd> <dt>128, <tt class="docutils literal"><span class="pre">KEY_NORMALIZE</span></tt></dt> <dd>ハッシュ表型か、パトリシア木型のテーブルにおいて、主キー値を正規化した上で登録します。この値が指定されたテーブルではたとえば、主キー値'abc'と'ABC' は同一のレコードに対応するものとみなされます。</dd> </dl> </div></blockquote> </div></blockquote> <p><tt class="docutils literal"><span class="pre">key_type</span></tt></p> <blockquote> <div>主キー値の型を指定します。主キー値を持つテーブルに限り有効です。型にはgroongaの組込型か、同一データベースに定義済みのユーザ定義型、定義済みのテーブルを指定することができます。</div></blockquote> <p><tt class="docutils literal"><span class="pre">value_type</span></tt></p> <blockquote> <div>値の型を指定します。tableの値には固定長の型のみが指定できます。(可変長の値が必要な場合は別途カラムを作成します) 型にはgroongaの組込型か、同一データベースに定義済みのユーザ定義型、またはテーブルを指定することができます。(デフォルトはvalueなし)</div></blockquote> <p><tt class="docutils literal"><span class="pre">default_tokenizer</span></tt></p> <blockquote> <div><p>作成するテーブルを語彙表として使用する場合、文字列を分割するトークナイザを指定します。</p> <p>組込のトークナイザとして、以下が準備されています。</p> <dl class="docutils"> <dt><tt class="docutils literal"><span class="pre">TokenDelimit</span></tt></dt> <dd>空白で区切られた文字列をトークンとする</dd> <dt><tt class="docutils literal"><span class="pre">TokenUnigram</span></tt></dt> <dd>unigram(1文字を1トークンとする)</dd> <dt><tt class="docutils literal"><span class="pre">TokenBigram</span></tt></dt> <dd>bigram(2文字の文字列要素をトークンとする)</dd> <dt><tt class="docutils literal"><span class="pre">TokenTrigram</span></tt></dt> <dd>trigram(3文字の文字列要素をトークンとする)</dd> <dt><tt class="docutils literal"><span class="pre">TokenMecab</span></tt></dt> <dd>形態素解析器mecabで解析した形態素をトークンとする。(mecabを組み込んだ場合のみ有効)</dd> </dl> <p>トークナイザが指定されなかった場合は、対象の文字列を分割せずに語彙表に登録します。</p> </div></blockquote> </div> <div class="section" id="id5"> <h2>7.2.21.5. 返値<a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h2> <div class="section" id="json"> <h3>7.2.21.5.1. json形式<a class="headerlink" href="#json" title="Permalink to this headline">¶</a></h3> <div class="highlight-none"><div class="highlight"><pre>[成功かどうかのフラグ] ``成功かどうかのフラグ`` エラーが生じなかった場合にはtrue、エラーが生じた場合にはfalseを返す。 </pre></div> </div> </div> </div> <div class="section" id="id6"> <h2>7.2.21.6. 例<a class="headerlink" href="#id6" title="Permalink to this headline">¶</a></h2> <p>ShortText型の主キーを持つハッシュ表型のテーブル、Entryを作成します。:</p> <div class="highlight-none"><div class="highlight"><pre>table_create Entry --key_type ShortText [true] </pre></div> </div> <p>ShortText型の主キーを持つパトリシア木型のテーブル、Termを作成します。主キー値は正規化して管理します。また、このテーブルを語彙表とする転置索引を作成する場合には、バイグラムの索引を作成します。:</p> <div class="highlight-none"><div class="highlight"><pre>table_create Term --flags TABLE_PAT_KEY|KEY_NORMALIZE --key_type ShortText --default_tokenizer TokenBigram [true] </pre></div> </div> </div> </div> </div> </div> </div> <div class="sphinxsidebar"> <div class="sphinxsidebarwrapper"> <h3><a href="../index.html">Table Of Contents</a></h3> <ul> <li><a class="reference internal" href="#">7.2.21. table_create</a><ul> <li><a class="reference internal" href="#id1">7.2.21.1. 名前</a></li> <li><a class="reference internal" href="#id2">7.2.21.2. 書式</a></li> <li><a class="reference internal" href="#id3">7.2.21.3. 説明</a></li> <li><a class="reference internal" href="#id4">7.2.21.4. 引数</a></li> <li><a class="reference internal" href="#id5">7.2.21.5. 返値</a><ul> <li><a class="reference internal" href="#json">7.2.21.5.1. json形式</a></li> </ul> </li> <li><a class="reference internal" href="#id6">7.2.21.6. 例</a></li> </ul> </li> </ul> <h4>Previous topic</h4> <p class="topless"><a href="suggest.html" title="previous chapter">7.2.20. suggest</a></p> <h4>Next topic</h4> <p class="topless"><a href="table_list.html" title="next chapter">7.2.22. table_list</a></p> <h3>This Page</h3> <ul class="this-page-menu"> <li><a href="../_sources/commands/table_create.txt" rel="nofollow">Show Source</a></li> </ul> <div id="searchbox" style="display: none"> <h3>Quick search</h3> <form class="search" action="../search.html" method="get"> <input type="text" name="q" size="18" /> <input type="submit" value="Go" /> <input type="hidden" name="check_keywords" value="yes" /> <input type="hidden" name="area" value="default" /> </form> <p class="searchtip" style="font-size: 90%"> Enter search terms or a module, class or function name. </p> </div> <script type="text/javascript">$('#searchbox').show(0);</script> </div> </div> <div class="clearer"></div> </div> <div class="related"> <h3>Navigation</h3> <ul> <li class="right" style="margin-right: 10px"> <a href="../genindex.html" title="General Index" >index</a></li> <li class="right" > <a href="table_list.html" title="7.2.22. table_list" >next</a> |</li> <li class="right" > <a href="suggest.html" title="7.2.20. suggest" >previous</a> |</li> <li><a href="../index.html">groonga v1.2.6 documentation</a> »</li> <li><a href="../reference.html" >7. リファレンスマニュアル</a> »</li> <li><a href="../commands.html" >7.2. コマンド</a> »</li> </ul> </div> <div class="footer"> © Copyright 2009-2011, Brazil, Inc. </div> </body> </html>