0

テーブルを作成しましたが、誤って次の名前の列を作成してしまいましたDATE(FROM_UNIXTIME(email_sends.created_ts))

保護された文字を使用しているため、この列を選択して名前を変更できません。基本的に、mysqlでこの列名をエスケープして変更できるようにする適切な方法を求めています。

4

1 に答える 1

2

バッククォートを使用して、特殊文字を含む識別子を引用します。マニュアルに記載されているように:

識別子は、引用符で囲まれていてもいなくてもかまいません。識別子に特殊文字が含まれているか予約語である場合は、参照するたびに引用符で囲む必要があります。

[...]

識別子の引用文字はバッククォート ("<code>`") です。

したがって、次のようなことができます。

ALTER TABLE foo CHANGE `DATE(FROM_UNIXTIME(email_sends.created_ts))` newname DATE;
于 2012-06-06T17:25:55.263 に答える