File: table_rename.rst

package info (click to toggle)
groonga 9.0.0-1%2Bdeb10u1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 101,496 kB
  • sloc: ansic: 608,707; ruby: 35,042; xml: 23,643; cpp: 10,319; sh: 7,453; yacc: 5,968; python: 3,033; makefile: 2,609; perl: 133
file content (90 lines) | stat: -rw-r--r-- 2,086 bytes parent folder | download | duplicates (5)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
.. -*- rst -*-

.. highlightlang:: none

.. groonga-command
.. database: commands_table_rename

``table_rename``
=================

Summary
-------

``table_rename`` command renames a table.

It is a light operation. It just changes a relationship between name
and the table object. It doesn't copy table and its column values.

It is a dangerous operation. You must stop all operations including
read operations while you run ``table_rename``. If the following case
is occurred, Groonga process may be crashed:

  * Starts an operation (like ``select``) that accesses the table to
    be renamed by the current table name. The current table name is
    called as ``the old table name`` in the below because the table
    name is renamed.
  * Runs ``table_rename``. The ``select`` is still running.
  * The ``select`` accesses the table to be renamed by the old table
    name. But the ``select`` can't find the table by the old name
    because the table has been renamed to the new table name. It may
    crash the Groonga process.

Syntax
------

This command takes two parameters.

All parameters are required::

  table_rename name new_name

Usage
-----

Here is a simple example of ``table_rename`` command.

.. groonga-command
.. include:: ../../example/reference/commands/table_rename/usage.log
.. table_create Users TABLE_PAT_KEY ShortText
.. column_create Users score COLUMN_SCALAR Int32
.. load --table Users
.. [
.. {"_key": "Alice",  "score": 2},
.. {"_key": "Bob",    "score": 0},
.. {"_key": "Carlos", "score": -1}
.. ]
.. table_rename Users Players
.. table_list
.. select Players

Parameters
----------

This section describes parameters of ``table_rename``.

Required parameters
^^^^^^^^^^^^^^^^^^^

All parameters are required.

``name``
""""""""

Specifies the table name to be renamed.

``new_name``
""""""""""""

Specifies the new table name.

Return value
------------

The command returns ``true`` as body on success such as::

  [HEADER, true]

If the command fails, error details are in ``HEADER``.

See :doc:`/reference/command/output_format` for ``HEADER``.