問題タブ [table-rename]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 他のテーブルに外部キーがある場合、sqliteの列名を変更します
groupsという名前のテーブルがあり、その列の 1 つの名前を変更したいと考えています。これまでのところ、大丈夫でした。sqliteが列の名前変更をサポートしていないことを知っているので、次のようにしました。
しかし、テーブルtmp_groupsを削除すると、外部キーを持つテーブルmembersON DELETE CASCADE
のレコードも削除されるため、次のことを行う必要がありました。
- メンバーと同じ列を持ち、外部キーを持たないテーブルtmp_membersを作成します。
- メンバーからのレコードをtmp_members に挿入します。
- テーブルメンバーを削除します。
- 最初の部分からコードを実行します (グループテーブルを使用)。
- 外部キーを使用してテーブル メンバーを再作成します。
- tmp_membersのメンバーデータに挿入します。
男、それは疲れた!単純に列の名前を変更するにはコードが多すぎます。
この制約の問題を処理する簡単な方法はありますか、それとも「sqlite の方法」ですか?
postgresql - アンダースコアをプレフィックスとして PostgreSQL テーブルの名前を変更する方法は?
PostgreSQL システムに依存するデータベースがあり、それを維持しているので、テーブルと全体的なスキームを変更したいと考えています。このため、古いテーブルの名前を変更して、接頭辞としてアンダースコアを付けることを考えました。しかし、これは機能していません:
クエリの結果は次のとおりです。
注意: テーブル "_my_table" は存在しません。スキップします エラー:
タイプ "_my_table" は既に存在します
********** エラー **********エラー: タイプ "_my_table" は既に存在します SQL 状態: 42710
「_my_table」テーブルは偽名ですが、実際に「_my_table」テーブルを作成して上記の同じスクリプトを実行すると、このエラーが再現されます。
pgAdmin III を使用してデータベース テーブルにアクセスしていますが、その「名前の変更」操作を使用すると、同じエラーが発生します。テーブル変更メソッドの postgresql ドキュメントでは、この特定の問題について明示的に説明されていません: http://www.postgresql.org/docs/9.3/static/sql-altertable.html
'_' の代わりに' backup ' のようなプレフィックスを使用する必要は本当にありますか? または、名前を変更することは可能でしょうか。私の唯一の関心は、テーブル名の変更を最小限に抑えながら、テーブル内の情報を維持することです。
sql-server - 制約付きのSQL Serverテーブルの名前変更
私がいる非常に単純な苦境。
基本的に、主キー/外部キーとカスケード制約を持つ 4 つのテーブルがあります。
元のテーブルの名前を変更する必要があるところまで来ました。過去にテーブルの名前を変更しましたsp_rename oldTableName, newTableName
が、主制約、外部制約、カスケード制約のあるテーブルは使用しませんでした。
テーブルの名前を変更しても安全ですか、sp_rename
それとも最初からテーブルを作成し、データをコピーしてから古いテーブルを削除する必要がありますか?
sql - Oracle テーブルの名前を変更する
ALTER TABLE RENAME ステートメントと RENAME TABLE ステートメントの違いは何ですか。
つまり、
と
sql-server - SQL Serverストアドプロシージャは、他のデータベースにテーブルが存在するかどうかを確認し、名前を変更します
2 つのデータベースがある: MAIN と IP2LOCATION
MAIN には、次のストアド プロシージャがあります。
それは正しく動作しません:
db11_new が存在しない場合は (正しく) 作成されますが、存在する場合は..
データベースには「db11_new」という名前のオブジェクトがすでに存在します。
したがって、何か問題があるようです
また、2 Renameの手順の最後に、(常に)次の回答が得られます
メッセージ 15248、レベル 11、状態 1、プロシージャ sp_rename、行 359 パラメータ @objname があいまいであるか、要求された @objtype (OBJECT) が間違っています。
問題は、sprocがip2location DBではなく別のデータベースに保存されているためです..
すべてのsprocをMAIN DBに保持したいので、解決策を提案できますか?
ありがとう