[英]Trying to Restore Entries from Backup Table to Main Table
有一些背景。 我有一對表,用於存儲潛在員工的“應用程序信息”。
主表與PHP / SQL一起顯示,並且存在指向該表中“刪除”應用程序的鏈接。
INSERT INTO ResultsOLD SELECT * FROM Results WHERE Results.id = '$IDin'
DELETE FROM Results WHERE Results.id = '$IDin' AND Timestamp = '$INts'
上面的條目將數據復制到備份表(舊的應用程序存儲),並從主表中刪除該條目。
我現在正在嘗試編寫一個恢復頁,以便可以從備份表中返回一個條目,並將其返回到主表中(從備份表中不刪除任何內容)。 我有以下SQL查詢:
INSERT INTO Results SELECT * FROM ResultsOLD WHERE ResultsOLD.id = '$IDin'
但是,當我嘗試從新頁面上運行此查詢時,它給出了一個錯誤。 我曾嘗試研究該錯誤,但我不明白它在說什么(我對SQL有點陌生)。
這是我得到的錯誤:
僅當使用列列表且IDENTITY_INSERT為ON時,才能為表“結果”中的標識列指定一個顯式值。
這是因為我在WHERE中使用的ID是主鍵嗎? 同樣,當我從ResultsOLD表中重新插入數據時,我想為該條目分配一個新的ID(主鍵),但其他所有內容保持不變。 該ID是自動遞增的,但是我想是因為我將ID用作WHERE,所以它可能還會嘗試插入它嗎?
我在Internet上找到了一些相關信息: http : //forums.databasejournal.com/showthread.php?9438-Turning-IDENTITY_INSERT- ON& p=21383#post21383
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.