Копирование всего из одной таблицы в другую - изменить значение и иметь идентификатор с автоматическим приращением?

0

Я пытаюсь скопировать все содержимое "TableA" в "TableB"... но с несколькими уловами, во-первых, в таблице B должны быть все новые автоматические индексы увеличения (я установил его как BIGINT, и он автоматически приращения в схеме), тогда мне нужно значение "refereceID" в TableB, чтобы всегда иметь значение "id" этой строки в TableA. В-третьих, есть поле "отчет", и на данный момент - я бы хотел, чтобы он ВСЕГДА имел значение "1".

Вот мой текущий SQL:

INSERT into tableB(id, report, referenceID, address, zip, last_seen_on, created) 
VALUES( 
    ,1
    ,[id] 
    ,[address] 
    ,[zip] 
    ,[last_seen_on] 
    ,[created])
SELECT * FROM TableA

Но я продолжаю получать ошибку SQL, которая выглядит так:

У вас есть ошибка в синтаксисе SQL; проверьте руководство, соответствующее версии вашего сервера MySQL, для правильного синтаксиса для использования рядом с "1", [id], [address], [zip], [last_seen_on], [created] "в строке 11

  • 0
    Разделители полей указывают, что вы не работаете с MySQL.
Теги:

1 ответ

2
Лучший ответ

Я думаю, что это то, что вам нужно (обратите внимание, что этот синтаксис для SQL, пропустил часть MySQL, но должен быть очень похожим/одинаковым для MySQL)

    INSERT into tableB(report, referenceID, address, zip, last_seen_on, created) 
Select         1
        ,[id] 
        ,[address] 
        ,[zip] 
        ,[last_seen_on] 
        ,[created]
from TableA

В вашей вкладке больше столбцов, чем ваши значения (если id является значением автоматического увеличения в вашем вставке, вы можете оставить это).

  • 0
    Итак, я также могу удалить 'id' из INSERT в строку? Предполагается, что эта запятая означает, что «1» должно использоваться для значения «Report», а не «id».
  • 0
    @MickeyThreeSheds да, столбцы autoid не указываются при вставке в строку, поэтому удаление должно обеспечить работу синтаксиса.
Показать ещё 2 комментария

Ещё вопросы

Сообщество Overcoder
Наверх
Меню