无法使用这个简单的临时 table 代码

Can't get this simple temporary table code to work

去掉中间两行后,空白输出正常出现(单列)!

CREATE TABLE #ProductNames (ProductName varchar(40));

INSERT INTO #ProductNames
SELECT p.ProductName FROM DBO.PRODUCTS AS p;

SELECT * FROM #ProductNames;

下面是 DBO.PRODUCTS 的样子:

此外,该问题的最后一行带有一个奇怪的 NOTE/suggestion:<< 注意:您需要将产品 table 指定为产品,而不是 dbo.Products。 >>

这是该注释后的结果! -
[3

尝试像这样使用 SELECT INTO 语句:

SELECT ProductName 
INTO #ProductNames
FROM DBO.PRODUCTS;

SELECT * 
FROM #ProductNames;

很可能,该站点已为您创建了架构。

碰巧 [dbo] 架构中有一个 [Products] table。

您需要使用 [Products],而不是 [dbo]。[Products]。解析不合格的对象名称时,例如 [Products],SQL 服务器将首先在您的默认架构中查找该对象。您的默认架构很可能是网站为您创建的架构。

我知道这已经超过 12 个月了,但我目前正在做与 OP 发布问题相同的课程,这个答案刚刚被 DataCamp 接受为正确的:

CREATE TABLE #ProductNames(ProductName varchar(40))

INSERT INTO #ProductNames 
SELECT ProductName FROM Products

SELECT * FROM  #ProductNames