ホームページ  >  に質問  >  本文

タイトルは次のように書き換えられます: 正常に解決されました - mysql コマンド ラインを使用して mySQL 列名を更新できない問題

<p>作成した mysql データベースのカラム名を変更できません。 </p> <p>次のコマンドを試しましたが、どれも機能しないようです。 </p> <pre class="brush:php;toolbar:false;">alter table (mytablename) CHANGE COLUMN (oldcolumnname) (newcolumnname) varchar(120);</pre> <pre class="brush:php;toolbar:false;">alter table (mytablename) RENAME COLUMN (oldcolumnname) (newcolumnname) varchar(120);</pre> <pre class="brush:php;toolbar:false;">ALTER TABLE (mytablename) CHANGE (oldcolumnname) (newcolumnname) varchar(120);</pre> <p>(mytablename) は作成したテーブルの名前、(oldcolumnname) は元の列名、(newcolumnname) は新しい列名です。 </p> <p>これは、MySQL を学習するために私が作成した、次の項目を含む簡単な ToDo リストです。</p> <テーブルクラス="s-テーブル"> <頭> <tr> id todo <th>完了</th> </tr> </頭> <みんな> <tr> 1 <td>離陸準備完了</td> <td>は</td>です </tr> <tr> 2 <td>MySQL について学びましょう</td> <td>は</td>です </tr> <tr> 3 <td>セミコロンを覚えておいてください</td> いいえ </tr> </tbody> </テーブル> <p>この場合、列「todo」を「To Do」または「To-Do」に変更しようとしましたが、これらのコマンドを試すたびに、有名な「SQL バージョンのマニュアルを確認してください」というメッセージが表示されます。 </p> <p>私の間違いについて何かヒントはありますか?ありがとう! </p> <p>複数のチュートリアル サイトを調べ、StackOverflow の別の質問も調べました</p> <p><strong>更新</strong> 最終的な解決策は 2 段階のプロセスでした。まず、列名の間に <strong>TO</strong> 句を使用する必要があります。次に、列名は特殊文字を好みません。 </p> <p>最終的に機能したクエリは次のとおりです: </p> <pre class="brush:php;toolbar:false;">ALTER TABLE mytablename CHANGE COLUMN todo TO ToDo</pre> <p><br /></p>
P粉343408929P粉343408929402日前523

全員に返信(1)返信します

  • P粉448130258

    P粉4481302582023-08-21 19:44:33

    todo という名前の列を保持する必要があります。次のように、選択時にいつでも出力を変更できます。 リーリー

    カラム名にスペースやダッシュを含める必要があるとどうしても思う場合は、MySQL では、バッククォートで囲むだけで任意の識別子を使用できます。

    リーリー

    ただし、SQL で列を参照するたびに、その列をバッククォートで囲む必要があります。 リーリー

    返事
    0
  • キャンセル返事