[Table Designer] Add validators for computed col in PK and FK (#1653)

This commit is contained in:
Hai Cao
2022-08-25 16:30:47 -07:00
committed by GitHub
parent 21a261bf69
commit 23072250b7
5 changed files with 95 additions and 2 deletions

View File

@@ -9804,6 +9804,16 @@ namespace Microsoft.SqlTools.ServiceLayer
return Keys.GetString(Keys.ColumnCannotDuplicateWitIndexKeyColumnsRuleDescription, columnName, indexName, rowNumber);
}
public static string ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription(string columnName)
{
return Keys.GetString(Keys.ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription, columnName);
}
public static string ComputedColumnNeedToBePersistedInForeignKeyRuleDescription(string columnName, string foreignKeyName)
{
return Keys.GetString(Keys.ComputedColumnNeedToBePersistedInForeignKeyRuleDescription, columnName, foreignKeyName);
}
[System.Runtime.CompilerServices.CompilerGeneratedAttribute()]
public class Keys
{
@@ -13562,6 +13572,12 @@ namespace Microsoft.SqlTools.ServiceLayer
public const string ColumnCannotDuplicateWitIndexKeyColumnsRuleDescription = "ColumnCannotDuplicateWitIndexKeyColumnsRuleDescription";
public const string ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription = "ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription";
public const string ComputedColumnNeedToBePersistedInForeignKeyRuleDescription = "ComputedColumnNeedToBePersistedInForeignKeyRuleDescription";
private Keys()
{ }

View File

@@ -5196,4 +5196,14 @@ The Query Processor estimates that implementing the following index could improv
<comment>.
Parameters: 0 - columnName (string), 1 - indexName (string), 2 - rowNumber (int) </comment>
</data>
<data name="ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription" xml:space="preserve">
<value>The computed column with name &apos;{0}&apos; has to be persisted and not nullable to be part of a primary key.</value>
<comment>.
Parameters: 0 - columnName (string) </comment>
</data>
<data name="ComputedColumnNeedToBePersistedInForeignKeyRuleDescription" xml:space="preserve">
<value>The computed column with name &apos;{0}&apos; has to be persisted to be part of the foreign key &apos;{1}&apos;.</value>
<comment>.
Parameters: 0 - columnName (string), 1 - foreignKeyName (string) </comment>
</data>
</root>

View File

@@ -2379,4 +2379,6 @@ MutipleCreateTableStatementsInScriptRuleDescription = There are multiple table d
ClusteredIndexCannotHaveIncludedColumnsRuleDescription = Included columns are not supported for a clustered index.
ClusteredIndexCannotHaveFilterPredicateRuleDescription = Filter predicate is not supported for a clustered index.
ColumnCanOnlyAppearOnceInIndexIncludedColumnsRuleDescription(string columnName, string indexName, int rowNumber) = Column with name '{0}' has already been included to the index '{1}'. Row number: {2}.
ColumnCannotDuplicateWitIndexKeyColumnsRuleDescription(string columnName, string indexName, int rowNumber) = Included column with name '{0}' has already been part of the index '{1}' and it cannot be included. Row number: {2}.
ColumnCannotDuplicateWitIndexKeyColumnsRuleDescription(string columnName, string indexName, int rowNumber) = Included column with name '{0}' has already been part of the index '{1}' and it cannot be included. Row number: {2}.
ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription(string columnName) = The computed column with name '{0}' has to be persisted and not nullable to be part of a primary key.
ComputedColumnNeedToBePersistedInForeignKeyRuleDescription(string columnName, string foreignKeyName) = The computed column with name '{0}' has to be persisted to be part of the foreign key '{1}'.

View File

@@ -6331,6 +6331,18 @@ The Query Processor estimates that implementing the following index could improv
<target state="new">Dropped Ledger Views</target>
<note></note>
</trans-unit>
<trans-unit id="ComputedColumnNeedToBePersistedAndNotNullInPrimaryKeyRuleDescription">
<source>The computed column with name '{0}' has to be persisted and not nullable to be part of a primary key.</source>
<target state="new">The computed column with name '{0}' has to be persisted and not nullable to be part of a primary key.</target>
<note>.
Parameters: 0 - columnName (string) </note>
</trans-unit>
<trans-unit id="ComputedColumnNeedToBePersistedInForeignKeyRuleDescription">
<source>The computed column with name '{0}' has to be persisted to be part of the foreign key '{1}'.</source>
<target state="new">The computed column with name '{0}' has to be persisted to be part of the foreign key '{1}'.</target>
<note>.
Parameters: 0 - columnName (string), 1 - foreignKeyName (string) </note>
</trans-unit>
</body>
</file>
</xliff>