信息系统 SQL Server 代码-Azure 技术-立哥开发

//Copyright 2020 Jacky Zong. All rights reserved
CREATE EXTERNAL DATA SOURCE AzureStorage
WITH 
(  
    TYPE = Hadoop 
,   LOCATION = 'wasbs://[email protected]/'
); 
GO

CREATE EXTERNAL FILE FORMAT TextFileFormat 
WITH 
(   FORMAT_TYPE = DELIMITEDTEXT
,    FORMAT_OPTIONS    (   FIELD_TERMINATOR = '|'
                    ,    STRING_DELIMITER = ''
                    ,    DATE_FORMAT         = 'yyyy-MM-dd HH:mm:ss.fff'
                    ,    USE_TYPE_DEFAULT = FALSE 
                    )
);
GO

-- To create a place to store the Contoso data in your database, create a schema.

CREATE SCHEMA [asb];
GO


-- Now let's create the external tables. All we are doing here is defining column names and data types, 
-- and binding them to the location and format of the Azure blob storage files. The location is the folder 
-- under the root directory of the Azure Storage Blob.

--DimAccount
CREATE EXTERNAL TABLE [asb].DimAccount 
(
    [AccountKey] [int] NOT NULL,
    [ParentAccountKey] [int] NULL,
    [AccountLabel] [nvarchar](100) NULL,
    [AccountName] [nvarchar](50) NULL,
    [AccountDescription] [nvarchar](50) NULL,
    [AccountType] [nvarchar](50) NULL,
    [Operator] [nvarchar](50) NULL,
    [CustomMembers] [nvarchar](300) NULL,
    [ValueType] [nvarchar](50) NULL,
    [CustomMemberOptions] [nvarchar](200) NULL,
    [ETLLoadID] [int] NULL,
    [LoadDate] [datetime] NULL,
    [UpdateDate] [datetime] NULL
)
WITH 
(
    LOCATION='/DimAccount/' 
,   DATA_SOURCE = AzureStorage_west_public
,   FILE_FORMAT = TextFileFormat
,   REJECT_TYPE = VALUE
,   REJECT_VALUE = 0
)
;
 
--DimChannel
CREATE EXTERNAL TABLE [asb].DimChannel 
(
    [ChannelKey] [int] NOT NULL,
    [ChannelLabel] [nvarchar](100) NOT NULL,
    [ChannelName] [nvarchar](20) NULL,
    [ChannelDescription] [nvarchar](50) NULL,
    [ETLLoadID] [int] NULL,
    [LoadDate] [datetime] NULL,
    [UpdateDate] [datetime] NULL
)
WITH
(
    LOCATION='/DimChannel/' 
,   DATA_SOURCE = AzureStorage_west_public
,   FILE_FORMAT = TextFileFormat
,   REJECT_TYPE = VALUE
,   REJECT_VALUE = 0
)
;
 
--DimCurrency
CREATE EXTERNAL TABLE [asb].DimCurrency 
(
    [CurrencyKey] [int] NOT NULL,
    [CurrencyLabel] [nvarchar](10) NOT NULL,
    [CurrencyName] [nvarchar](20) NOT NULL,
    [CurrencyDescription] [nvarchar](50) NOT NULL,
    [ETLLoadID] [int] NULL,
    [LoadDate] [datetime] NULL,
    [UpdateDate] [datetime] NULL
)
WITH
(
    LOCATION='/DimCurrency/' 
,   DATA_SOURCE = AzureStorage_west_public
,   FILE_FORMAT = TextFileFormat
,   REJECT_TYPE = VALUE
,   REJECT_VALUE = 0
)
;

--DimCustomer
CREATE EXTERNAL TABLE [asb].DimCustomer 
(
    [CustomerKey] [int]  NOT NULL,
    [GeographyKey] [int] NOT NULL,
    [CustomerLabel] [nvarchar](100) NOT NULL,
    [Title] [nvarchar](8) NULL,
    [FirstName] [nvarchar](50) NULL,
    [MiddleName] [nvarchar](50) NULL,
    [LastName] [nvarchar](50) NULL,
    [NameStyle] [bit] NULL,
    [BirthDate] [datetime] NULL,
    [MaritalStatus] [nchar](1) NULL,
    [Suffix] [nvarchar](10) NULL,
    [Gender] [nvarchar](1) NULL,
    [EmailAddress] [nvarchar](50) NULL,
    [YearlyIncome] [money] NULL,
    [TotalChildren] [tinyint] NULL,
    [NumberChildrenAtHome] [tinyint] NULL,
    [Education] [nvarchar](40) NULL,
    [Occupation] [nvarchar](100) NULL,
    [HouseOwnerFlag] [nchar](1) NULL,
    [NumberCarsOwned] [tinyint] NULL,
    [AddressLine1] [nvarchar](120) NULL,
    [AddressLine2] [nvarchar](120) NULL,
    [Phone] [nvarchar](20) NULL,
    [DateFirstPurchase] [datetime] NULL,
    [CustomerType] [nvarchar](15) NULL,
    [CompanyName] [nvarchar](100) NULL,
    [ETLLoadID] [int] NULL,
    [LoadDate] [datetime] NULL,
    [UpdateDate] [datetime] NULL
)
WITH
(
    LOCATION='/DimCustomer/' 
,   DATA_SOURCE = AzureStorage_west_public
,   FILE_FORMAT = TextFileFormat
,   REJECT_TYPE = VALUE
,   REJECT_VALUE = 0
)
;

--DimDate
CREATE EXTERNAL TABLE [asb].DimDate
(
    [Datekey] [datetime] NOT NULL,
    [FullDateLabel] [nvarchar](20) NOT NULL,
    [DateDescription] [nvarchar](20) NOT NULL,
    [CalendarYear] [int] NOT NULL,
    [CalendarYearLabel] [nvarchar](20) NOT NULL,
    [CalendarHalfYear] [int] NOT NULL,
    [CalendarHalfYearLabel] [nvarchar](20) NOT NULL,
    [CalendarQuarter] [int] NOT NULL,
    [CalendarQuarterLabel] [nvarchar](20) NULL,
    [CalendarMonth] [int] NOT NULL,
    [CalendarMonthLabel] [nvarchar](20) NOT NULL,
    [CalendarWeek] [int] NOT NULL,
    [CalendarWeekLabel] [nvarchar](20) NOT NULL,
    [CalendarDayOfWeek] [int] NOT NULL,
    [CalendarDayOfWeekLabel] [nvarchar](10) NOT NULL,
    [FiscalYear] [int] NOT NULL,
    [FiscalYearLabel] [nvarchar](20) NOT NULL,
    [FiscalHalfYear] [int] NOT NULL,
    [FiscalHalfYearLabel] [nvarchar](20) NOT NULL,
    [FiscalQuarter] [int] NOT NULL,
    [FiscalQuarterLabel] [nvarchar](20) NOT NULL,
    [FiscalMonth] [int] NOT NULL,
    [FiscalMonthLabel] [nvarchar](20) NOT NULL,
    [IsWorkDay] [nvarchar](20) NOT NULL,
    [IsHoliday] [int] NOT NULL,
    [HolidayName] [nvarchar](20) NOT NULL,
    [EuropeSeason] [nvarchar](50) NULL,
    [NorthAmericaSeason] [nvarchar](50) NULL,
    [AsiaSeason] [nvarchar](50) NULL
)
WITH
(
    LOCATION='/DimDate/' 
,   DATA_SOURCE = AzureStorage_west_public
,   FILE_FORMAT = TextFileFormat
,   REJECT_TYPE = VALUE
,   REJECT_VALUE = 0
)
;

猜你喜欢

转载自blog.csdn.net/weixin_45806384/article/details/109091425