#azure #azure-data-factory
#azure #azure-data-factory
Вопрос:
У меня есть связанная служба для встроенного SQL-сервера с параметром типа Object с именем ConnectionDetails .
Когда я пытаюсь использовать кнопку test connection, используя следующий ввод json для ConnectionDetails, я получаю ошибки синтаксического анализа:
{
"ServerName" : "myserver.test.com",
"DatabaseName" : "mydb",
"UserName" : "myuser",
"UserPasswordAKV" : "mypass-secret"
}
The parameters and expression cannot be resolved for schema operations.
Error Message: {
"Message": "After parsing a value an unexpected character was encountered: S. Path 'typeProperties.connectionString', line 19, position 69."
}
Я пробовал их в качестве своих выражений:
@linkedService().ConnectionDetails.ServerName
@linkedService().ConnectionDetails.DatabaseName
@linkedService().ConnectionDetails.UserName
Связанный сервис JSON:
{
"name": "SqlServer_OnPrem_Dynamic2",
"type": "Microsoft.DataFactory/factories/linkedservices",
"properties": {
"description": "",
"parameters": {
"ConnectionDetails": {
"type": "object"
}
},
"annotations": [],
"type": "SqlServer",
"typeProperties": {
"connectionString": "Integrated Security=False;Data Source=@{linkedService().ConnectionDetails.ServerName};Initial Catalog=@{linkedService().ConnectionDetails.DatabaseName};User ID=@{linkedService().ConnectionDetails.UserName}",
"password": {
"type": "AzureKeyVaultSecret",
"store": {
"referenceName": "keys_dev",
"type": "LinkedServiceReference"
},
"secretName": {
"value": "@{linkedService().ConnectionDetails.UserPasswordAKV}",
"type": "Expression"
}
}
}
Не уверен, что я делаю неправильно, я не думал, что мне нужно использовать для этого какую-либо другую функцию.
Комментарии:
1. какую базу данных типа вы использовали? Где вы установили выражения? Можете ли вы показать нам какие-либо скриншоты?
2. @Leon Yue Я обновил исходное сообщение дополнительной информацией. Я должен упомянуть, что это соединение отлично работает, когда я использую простые строковые параметры вместо объекта json
3. Я согласен с вами. Я протестировал строковый и объектный тип параметра, все они выдают ошибку. Но я получаю сообщение об ошибке «Неожиданное завершение ввода JSON». Я предполагаю, что тип данных json не поддерживается.
Ответ №1:
Да, параметр типа объекта не может работать. Вы можете попробовать создать четыре параметра строкового типа, чтобы попробовать.
Комментарии:
1. Есть идеи, почему это не сработает? Я имею в виду, что тип «объект» доступен в раскрывающемся списке и все.