1

は、Googleクラウドスパナで列の名前を変更することはできますか?

RENAME COLUMN col1 col2 

のようなものを発行することが可能ですか?これは不可能だとDDLから見ています。そうでない場合は、これはベータ版での設計上の選択か制限ですか?

答えて

3

いいえ、これはできません。現在、あなただけのテーブルで変更の列に関して、次の操作を行うことができます:それは

  • 変更と行動(カスケーディングかを)削除キー列でない限り

    • は、既存のものを削除して新しいもの
    • を追加します。
    • NOT NULLを追加または削除STRINGBYTES
    • STRINGBYTES
    • 変更長間の変換修飾子

    周りの作業の順序で以下の手順で可能です:

    • あなたのテーブルに新しい列を追加するには、コードを更新両方の列
    • からに読み取るために、あなたのコードを更新新しい列にのみ書き込む
    • クラウドデータフロージョブを実行して、古い列から新しい列にデータを移行する
    • コードを新しい列
    • ドロップ

    は、上記の手順は、主キー列では動作しません覚えておいてください古い列から読んで、あなたは新しいテーブルを作成し、データ移行を行うことによって行う必要があるでしょうそうですね。

  • +0

    ダン - ヒントのおかげで。移行を実行するCloud Dataflowジョブの実行について、どのように提案しますか? Cloud Spannerからデータを取得/ストリームできるようにするためのものはありますか? – user3707

    +0

    大規模なデータセットを持っていない限り、古いプロセスを書いて、単一のスレッドですべてを読み書きするだけで、その作業を完了させることができます。 –

    関連する問題