0
votes

I'm pretty new to azure search and data factory. I'm wanting to use data factory to populate my azure search index. I have the following:

Source

Azure sql db

{
"name": "Drug",
"properties": {
    "published": false,
    "type": "AzureSqlTable",
    "linkedServiceName": "AzureSqlLinkedService",
    "typeProperties": {
        "tableName": "[transformed].[drug]"
    },
    "availability": {
        "frequency": "Minute",
        "interval": 15
    },
    "external": true,
    "policy": {}
}

}

Table structure

[DrugSearchId] [uniqueidentifier] NOT NULL,
[SearchTerm] [nvarchar](max) NOT NULL,
[ProdCode] [int] NULL,
[FormCode] [int] NULL,
[PackCode] [int] NOT NULL,
[PackSort] [int] NULL,
[Active] [nvarchar](25) NULL,
[ActiveUnits] [nvarchar](20) NULL,
[UnitsPerPack] [int] NOT NULL,
[NoOfPacks] [int] NOT NULL,
[NoOfRepeats] [int] NULL,
[PbsCode] [nvarchar](6) NULL,
[PbsDesc] [nvarchar](255) NULL,
[Product] [nvarchar](max) NULL,
[GenericList] [nvarchar](max) NULL,
[ActionList] [nvarchar](max) NULL,
[MedicineInformationType] [nchar](50) NOT NULL

Target

{
"name": "DrugSearchIndex",
"properties": {
    "published": false,
    "type": "AzureSearchIndex",
    "linkedServiceName": "AzureSearchLinkedService",
    "typeProperties": {
        "indexName": "drug"
    },
    "availability": {
        "frequency": "Minute",
        "interval": 15
    }
}

}

enter image description here

I'm getting an error when the pipeline runs with the following:

Source column names don't match with the Azure Search Index field names. Please specify Column Mapping.,Source...

What am I missing?

1

1 Answers

0
votes

It's possible that the reason for error is case mismatch between the field names in the table and in the search index. All field names in the table are Pascal-case, while index fields are camel-case.