I am assuming you may need only the Azure SQL Database or Azure Synapse Analytics tag here, I updated your query like the following :
USE gold_db;
GO
-- Optionally, drop the existing procedure if it exists
IF EXISTS (SELECT * FROM sys.objects WHERE type = 'P' AND name = 'CreateSQLServerlessView_gold')
DROP PROCEDURE CreateSQLServerlessView_gold;
GO
CREATE PROCEDURE CreateSQLServerlessView_gold @ViewName nvarchar(100)
AS
BEGIN
DECLARE @statement NVARCHAR(MAX);
SET @statement = N'CREATE VIEW ' + QUOTENAME(@ViewName) + N' AS
SELECT * FROM OPENROWSET(
BULK ''https://msinstorageaccount145.dfs.core.windows.net/gold/SalesLT/' + @ViewName + '/'',
FORMAT = ''CSV''
) AS result;';
EXEC sp_executesql @statement;
END;
GO