Поделиться через


Объект Relationships (TMSL)

Применимо к: SQL Server 2016 и более поздних версий Analysis Services Azure Analysis Services Fabric/Power BI Premium

Определяет связь между исходной и целевой таблицами с возможностью указывать кратность, а также направление запросов и фильтров безопасности.

Определение объекта

Все объекты имеют общий набор свойств, включая имя, тип, описание, коллекцию свойств и заметки. Объекты связей также имеют следующие свойства.

Isactive
Логическое значение, указывающее, помечена ли связь как активная или неактивная. Активная связь автоматически используется для фильтрации в таблицах. Неактивная связь может использоваться явным образом в вычислениях DAX с применением функции USERELATIONSHIP.

**crossFilteringBehavior ** Указывает, как связи влияют на фильтрацию данных. Допустимые значения:

  • OneDirection (1) — строки, выбранные в конце связи "To", автоматически фильтруют проверки таблицы в конце отношения "От".

  • BothDirections (2) — фильтры на обоих концах связи автоматически фильтруют другую таблицу.

  • Автоматически (3) — подсистема анализирует связи и выбирает одно из поведений с помощью эвристики.

joinOnDateBehavior
При объединении двух столбцов даты и времени указывает, идет ли объединение по дате и времени или только по дате.

  • DateAndTime (1) — при объединении двух столбцов даты и времени объединяйте элементы даты и времени.

  • DatePartOnly (2) — при соединении двух столбцов даты и времени объединяйте только часть даты.

relyOnReferentialIntegrity
Не используется — зарезервировано для будущего использования.

securityFilteringBehavior
Перечисление, указывающее, как связи влияют на фильтрацию данных при оценке выражений безопасности на уровне строк. Допустимы следующие значения:

  • OneDirection (1) — строки, выбранные в конце связи "To", автоматически фильтруют проверки таблицы в конце отношения "От".

  • BothDirections (2) — фильтры на обоих концах связи автоматически фильтруют другую таблицу.

Использование

Объекты связей используются в командах Alter (TMSL),Create command (TMSL),CreateOrReplace (TMSL) и Delete command (TMSL) .

При создании, замене или изменении объекта связи укажите все свойства для чтения и записи определения объекта. Пропуск свойства чтения и записи считается удалением.

Полный синтаксис

Ниже приведено представление схемы объекта связи.

"relationships": {  
          "type": "array",  
          "items": {  
            "anyOf": [  
              {  
                "description": "SingleColumnRelationship object of Tabular Object Model (TOM)",  
                "type": "object",  
                "properties": {  
                  "name": {  
                    "type": "string"  
                  },  
                  "isActive": {  
                    "type": "boolean"  
                  },  
                  "type": {  
                    "enum": [  
                      "singleColumn"  
                    ]  
                  },  
                  "crossFilteringBehavior": {  
                    "enum": [  
                      "oneDirection",  
                      "bothDirections",  
                      "automatic"  
                    ]  
                  },  
                  "joinOnDateBehavior": {  
                    "enum": [  
                      "dateAndTime",  
                      "datePartOnly"  
                    ]  
                  },  
                  "relyOnReferentialIntegrity": {  
                    "type": "boolean"  
                  },  
                  "securityFilteringBehavior": {  
                    "enum": [  
                      "oneDirection",  
                      "bothDirections"  
                    ]  
                  },  
                  "fromCardinality": {  
                    "enum": [  
                      "none",  
                      "one",  
                      "many"  
                    ]  
                  },  
                  "toCardinality": {  
                    "enum": [  
                      "none",  
                      "one",  
                      "many"  
                    ]  
                  },  
                  "fromColumn": {  
                    "type": "string"  
                  },  
                  "fromTable": {  
                    "type": "string"  
                  },  
                  "toColumn": {  
                    "type": "string"  
                  },  
                  "toTable": {  
                    "type": "string"  
                  },  
                  "annotations": {  
                    "type": "array",  
                    "items": {  
                      "description": "Annotation object of Tabular Object Model (TOM)",  
                      "type": "object",  
                      "properties": {  
                        "name": {  
                          "type": "string"  
                        },  
                        "value": {  
                          "anyOf": [  
                            {  
                              "type": "string"  
                            },  
                            {  
                              "type": "array",  
                              "items": {  
                                "type": "string"  
                              }  
                            }  
                          ]  
                        }  
                      },  
                      "additionalProperties": false  
                    }  
                  }  
                },  
                "additionalProperties": false  
              }  
            ]  
          }  
        }