По сути, мой вопрос заключается в том, как бы скопировать определенную таблицу без (как и во всем ее содержимом) столбца идентификаторов?
Для уточнения, скажем, у меня есть схема с именем completed_tasks
, и я быЯ хотел бы вставить все его содержимое в completed_tasks_archive
:
$stmt = $GLOBALS['conn']->prepare("INSERT INTO completed_tasks_archive SELECT * FROM completed_tasks; ");
$stmt->execute();
Код должен работать нормально, но из-за столбца идентификаторов, который я бы назвал ID
, я не могу выполнить эту операцию.
Я получаю ошибку, подобную этой:
PHP Fatal error: Uncaught PDOException: SQLSTATE[23000]: [Microsoft][ODBC Driver 17 for SQL Server][SQL Server]An explicit value for the identity column in table 'completed_tasks_archive' can only be specified when a column list is used and IDENTITY_INSERT is ON.
По сути, я задаюсь вопросом, есть ли более быстрый способ выполнить эту транзакцию данных без указания всех подробностей?подробности в запросе.
Я использую MS SQLSRV для хранения данных.
Я прошу прощения, если мой вопрос немного запутан, но я все еще учусь тому, как использовать все это, и, что более важно, учусь тому, как использовать это изящно.