2017-12-23 7 views
0

現在、テーブルの列名にかっこを挿入しようとしています。ただし、スクリプトを実行するとエラーが発生します。SQLテーブルの列名に角括弧を挿入するにはどうすればよいですか?

私のスクリプトの私のテーブルのフォーマットは、以前に読み取ります

cursor.execute("CREATE TABLE IF NOT EXISTS table (date date, voltage decimal (2,2))") 

私はその後、私のテーブルのカラム名にブラケットを追加するためのスクリプトのこの部分に変更を加えました。

大括弧(V)を追加すると、スクリプトが実行されません。

エラーは次のとおりです。 SQL構文。行1の '(V)decimal(2,2)'の近くで使用する正しい構文については、MariaDBサーバーのバージョンに対応するマニュアルを確認してください。

エラーを表示せずに角括弧を追加するにはどうすればよいですか?

+0

電圧を入れてみる – Satya

+1

ちょっと:しないでください –

+0

これで、SQLでテーブルを使用しようとしている人は誰ですか?それはデータストレージであり、その名前のようなものを保持することは想定されていません - あなたがプレゼンテーションレイヤーで行うことです。 '電圧'は完全に素晴らしい名前です - '(V)'を加えることは、誰にも何かを制限せず、あなたを含めたすべての人生を複雑にするだけです。 –

答えて

1

データベース、テーブル、または列の名前に特殊文字を使用する場合は、名前をバッククォートに入れます。

CREATE TABLE IF NOT EXISTS table (
    date date, 
    `voltage(V)` decimal (2,2) 
) 

また、列を参照するすべてのクエリにバッククォートを使用する必要がありますので、それはおそらく、すべての他のプログラマを悩ますます。

MySQLでの引用の詳細については、When to use single quotes, double quotes, and backticks in MySQLを参照してください。

関連する問題