Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

грешка в операторите Multiple Select в оператора Insert

Просто променете VALUES на SELECT и премахнете външните скоби.

INSERT INTO dbo.Products 
(ProductName, 
 SupplierID, 
 CategoryID, 
 UnitsInStock, 
 UnitsOnOrder, 
 ReorderLevel, 
 Discontinued)
SELECT  
'Twinkies' , 
 (SELECT SupplierID FROM dbo.Suppliers WHERE CompanyName = 'Lyngbysild'),
 (SELECT CategoryID FROM dbo.Categories WHERE CategoryName = 'Confections'), 
 0, 
 0, 
 10, 
 0

Може да се нуждаете и от TOP 1 върху подизразите, но това би дало различно съобщение за грешка:подзаявката върна повече от една стойност.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Промяна на задача на агент на SQL Server (T-SQL)

  2. sql сървър изберете първия ред от група

  3. възникна грешка при установяване на връзка със SQL Server

  4. Как да сравня 2 реда от една и съща таблица (SQL Server)?

  5. Как да закръглите (НАГОРЕ/НАДОЛУ) в SQL Server – 5 полезни съвета