繁体   English   中英

构建错误 SQL46005:预期 FILESTREAM_ON 但在尝试为 Azure Synapse SQL 池构建数据库项目时遇到 object

[英]Build error SQL46005: Expected FILESTREAM_ON but encountered object instead when trying to build a database project for Azure Synapse SQL pool

我正在尝试使用 azure 突触 sql 池作为目标数据库构建数据库项目,但我得到Build error SQL46005: Expected FILESTREAM_ON but encountered object instead错误。

我进行了调查,发现有几个过程我正在使用数据交换方法来暂存和加载数据。 这是该模式的示例;

CREATE PROC [schema].[some_proc] AS

-- Drop temp table if exists
if object_id(N'schema.t_dim_temp_table') is not null
drop table schema.t_dim_temp_table;

create table schema.t_dim_temp_table
with (   distribution = hash (somecol)
        ,clustered columnstore index
     )
as
select
*
,CURRENT_TIMESTAMP AS last_update_date
from stgschema.v_dim_stage

-- Rename and remove temp objects
rename object schema.t_dim_table       to t_dim_table_old;
rename object schema.t_dim_temp_table  to t_dim_table;
drop table schema.t_dim_table_old;

任何有关如何解决此错误的想法将不胜感激

不确定这是否会解决您的问题,但重命名在“to”部分没有架构的情况下有效:

  • 将 object schema.t_dim_table 重命名为 t_dim_table_old;
  • 将 object schema.t_dim_temp_table 重命名为 t_dim_table;

最好的,英戈

我通过将其包装在Exec function 中解决了这个问题。

Exec('rename object schema.t_dim_table       to t_dim_table_old');
Exec('rename object schema.t_dim_temp_table  to t_dim_table');

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM