Почему я не могу создать новую таблицу, просто запросив CREATE TABLE?

MS SQL СЕРВЕР
Когда я делаю запрос

SELECT *
FROM dbo.transactions 

он отлично перечисляет все строки и столбцы.

Проблема в том, что я пытаюсь создать новую таблицу с помощью CREATE TABLE.

CREATE TABLE dbo.all_transactions 
SELECT *
FROM dbo.transactions 

или

CREATE TABLE dbo.all_transactions AS
SELECT *
FROM dbo.transactions 

Всегда получаю странную ошибку

Msg 156, Level 15, State 1, Line 2
Incorrect syntax near the keyword 'SELECT'

Рядом с SELECT есть только *. Как это может быть "Неправильный синтаксис"?

Я попытался изменить имя таблицы или использовать другую таблицу, но это не сработало. Я проверил, что имена столбцов уникальны. Они уникальны.

Для создания таблицы требуется синтаксис информации о столбце ref: learn.microsoft.com/en-us/sql/t-sql/statements/… для вашего удовольствия от чтения.

Mark Schultheiss 31.03.2023 21:33

Интересно, может быть, вы хотите View за это.

Joel Coehoorn 31.03.2023 21:44

Вы должны следовать правильному синтаксису. Вы не можете просто написать что угодно и ожидать, что SQL Server каким-то образом поймет, что вы хотите.

Eric 01.04.2023 00:55
ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
1
3
62
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Предположим, вы хотите создать таблицу all_transactions, скопировав данные из transactions Попробуйте это:

SELECT * INTO dbo.all_transactions
FROM dbo.transactions;

Другие вопросы по теме