
ID列を含む「テーブルA」の内容をコピー&コピーの一部項目を編集して、ID列はリセットして振り直しを行った後、「テーブルA」にINSERTするといった事をしたいのです。編集する項目、IDの項目はKEYになっている。
SQLリファレンスで調べてみましたが、SET IDENTITY_INSERT XXXX ON、DBCC CHECKIDENTなどの使い方がいまいち良くわからないのです。
1.「テーブルA」のIDENTITYをはずした形で、コピー先のテーブル「テーブルB」をCREATE。(レイアウトは全く同じ。)
2.「テーブルA」を全て、「テーブルB」(編集用)へINSERT。
3.「テーブルB」の一部項目を編集、「テーブルA」のID列に相当する項目を'1'から配番する。
4.編集後の「テーブルB」を全て、ID列を含む「テーブルA」にINSERT。
上記3、4項の方法が良くわかりません。
データテーブルは、「年度」・「履歴番号」(ID)・「その他項目多数」を持ち、編集方法は、「年度」を新年度に置換し、「履歴番号」を'1'から振り直したものを、「テーブルA」にINSERTしたいのです。
「履歴番号」(ID)の振り直しの条件はありません。レコードTOPから'1'から順に再配番されればいい。
やりたい事は単純なのですが。。。。初心者ですみません。
助言いただければと思い質問しました。
No.1ベストアンサー
- 回答日時:
通常は以下のように手順3、4は一緒にやります。
SELECT * INTO TABLEB FROM TABLEA
GO
TRUNCATE TABLE TABLEA
GO
INSERT INTO TABLEA(年度,項目1,項目2,...)
SELECT 2010,項目1,項目2,... FROM TABLEB
ORDER BY 履歴番号
GO
もしかして、年度+履歴番号で主キーになっていて、同じテーブルに2009年度と2010年度を両方収録し、しかもそれぞれの年度で1から連番を振るという意味ですか?
その場合は「TRUNCATE TABLE TABLEA」の代わりに、「DBCC CHECKIDENT (TABLEA,RESEED,0)」を実行し、2010年度も1から振られるようにします。
(こういう使い方はあまりお勧めではないですけど)
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
Countと受付状態の表示に...
-
下記の事を行うSQLがわかりませ...
-
パススルークエリをテーブル作...
-
データベースで変更の多いテー...
-
テーブル作成クエリで主キーを設定
-
2つのmdb内にある同名テーブル...
-
Accessで、複数のテーブルで随...
-
Accessでのテーブルのコピー
-
ACCESS97のテーブルサイズについて
-
ACCESSに同時アクセス(編集)を...
-
Accessデータベースで測定デー...
-
SQLで条件指定結合をしたいがNU...
-
Accessでテーブルからテーブル...
-
時間の足し算
-
ACCESSのSQLで数値型に変換する...
-
Excel 2019 のピボットテーブル...
-
「直需」の意味を教えてください
-
ACCESS検索★ある文字を複数のフ...
-
Accessで、固定アルファベット+...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
Accessでテーブル名やクエリ名...
-
下記の事を行うSQLがわかりませ...
-
Countと受付状態の表示に...
-
Accessレコードの追加や変更が...
-
Accessの追加クエリで既存のテ...
-
Accessでテーブルからテーブル...
-
Accessでvlookupみたいなことは...
-
2つのテーブルを比較して一致し...
-
Accessクエリでの、LIKE条件
-
access テーブル内のレコード...
-
テーブルを、たとえそれが存在...
-
ACCESSのSQLで数値型に変換する...
-
デザインビューで、連結式 を...
-
ACCESSに同時アクセス(編集)を...
-
2つのテーブルAとBをマージ...
-
accessで指定期間の曜日カウン...
-
データベースで変更の多いテー...
-
INSERT時にデータ登録とmaxの発...
-
パススルークエリをテーブル作...
-
SQLで条件指定結合をしたいがNU...
おすすめ情報