web-dev-qa-db-ja.com

Sqlite:テーブルと列にコメントを追加しますか?

MySQL Workbenchでは、MySQLデータベースのテーブルと列にコメントを追加できます。

Sqliteはテーブルと列へのコメントの追加をサポートしていますか?

28
warvariuc

私はそうは思わない。 "SQLiteによって理解されるSQL" ページでは、テーブルまたは列のコメントについては言及されておらず、 CREATE TABLE または ALTER TABLE のドキュメントについても言及されていません。

また、 サポートされていないSQL wikiページには次のものがあります。

2009-08-04:テーブルと列のコメント-ドキュメンタリーを調べましたが、テーブルまたはその列にコメントを適用することについて何も見つかりません。

はい、それは2009年のwikiページですが、そのメモは残りのドキュメントでサポートされています。

ただし、SQLiteは、DDLに入力したSQLコメントを保持します。これをsqlite3 CLIツールにフィードする場合:

CREATE TABLE User
        -- A table comment
(
        uid INTEGER,    -- A field comment
        flags INTEGER   -- Another field comment
);

次に、.schemaコマンドから正確にそれを取得します。

sqlite> .schema
CREATE TABLE User
        -- A table comment
(
        uid INTEGER,    -- A field comment
        flags INTEGER   -- Another field comment
);

したがって、テーブルの作成に使用されるDDLを制御できれば、それを偽造できるはずです。

36
mu is too short

Sqliteを使用してテーブルを作成する場合(Pythonではsqlite3を使用しています)、COMMENTセクションはサポートされていません。

これは失敗します(完全なMySql構文で機能します):

CREATE TABLE `Info` (
  `Test` VARCHAR(512) NOT NULL COMMENT 'Column info here'
);

これは機能します(列宣言にCOMMENTはありません):

CREATE TABLE `Info` (
  `Test` VARCHAR(512) NOT NULL
);
1
Joao Coelho

SQLiteでコメントを作成する方法は2つあります。

ハイフン

-- this is my comment
SELECT * FROM employees;

Cスタイル

/* this is my comment */ 
SELECT * FROM employees;

(これが元のポスターが話していたものかどうかはわかりませんが、これは私がこの質問を最初に見つけたときに探していたものです。)

1
Suragch