mirror of
https://github.com/ckaczor/sqltoolsservice.git
synced 2026-02-16 10:58:30 -05:00
A few table designer fixes (#1581)
* enable index rename * use SystemName to fix constraint name validator
This commit is contained in:
@@ -904,7 +904,6 @@ namespace Microsoft.SqlTools.ServiceLayer.TableDesigner
|
|||||||
{
|
{
|
||||||
var indexVM = new IndexViewModel();
|
var indexVM = new IndexViewModel();
|
||||||
indexVM.Name.Value = index.Name;
|
indexVM.Name.Value = index.Name;
|
||||||
indexVM.Name.Enabled = tableInfo.IsNewTable; // renaming an index is not supported, it will cause a new index to be created.
|
|
||||||
indexVM.Description.Value = index.Description;
|
indexVM.Description.Value = index.Description;
|
||||||
indexVM.Description.Enabled = index.CanEditDescription;
|
indexVM.Description.Enabled = index.CanEditDescription;
|
||||||
indexVM.IsClustered.Checked = index.IsClustered;
|
indexVM.IsClustered.Checked = index.IsClustered;
|
||||||
|
|||||||
@@ -189,52 +189,51 @@ namespace Microsoft.SqlTools.ServiceLayer.TableDesigner
|
|||||||
for (int i = 0; i < table.ForeignKeys.Items.Count; i++)
|
for (int i = 0; i < table.ForeignKeys.Items.Count; i++)
|
||||||
{
|
{
|
||||||
var foreignKey = table.ForeignKeys.Items[i];
|
var foreignKey = table.ForeignKeys.Items[i];
|
||||||
if (existingNames.Contains(foreignKey.Name))
|
if (existingNames.Contains(foreignKey.SystemName))
|
||||||
{
|
{
|
||||||
errors.Add(new TableDesignerIssue()
|
errors.Add(new TableDesignerIssue()
|
||||||
{
|
{
|
||||||
Description = SR.NoDuplicateConstraintNameRuleDescription(foreignKey.Name, i + 1),
|
Description = SR.NoDuplicateConstraintNameRuleDescription(foreignKey.SystemName, i + 1),
|
||||||
PropertyPath = new object[] { TablePropertyNames.ForeignKeys, i, ForeignKeyPropertyNames.Name }
|
PropertyPath = new object[] { TablePropertyNames.ForeignKeys, i, ForeignKeyPropertyNames.Name }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
existingNames.Add(foreignKey.Name);
|
existingNames.Add(foreignKey.SystemName);
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < table.CheckConstraints.Items.Count; i++)
|
for (int i = 0; i < table.CheckConstraints.Items.Count; i++)
|
||||||
{
|
{
|
||||||
var checkConstraint = table.CheckConstraints.Items[i];
|
var checkConstraint = table.CheckConstraints.Items[i];
|
||||||
if (existingNames.Contains(checkConstraint.Name))
|
if (existingNames.Contains(checkConstraint.SystemName))
|
||||||
{
|
{
|
||||||
errors.Add(new TableDesignerIssue()
|
errors.Add(new TableDesignerIssue()
|
||||||
{
|
{
|
||||||
Description = SR.NoDuplicateConstraintNameRuleDescription(checkConstraint.Name, i + 1),
|
Description = SR.NoDuplicateConstraintNameRuleDescription(checkConstraint.SystemName, i + 1),
|
||||||
PropertyPath = new object[] { TablePropertyNames.CheckConstraints, i, CheckConstraintPropertyNames.Name }
|
PropertyPath = new object[] { TablePropertyNames.CheckConstraints, i, CheckConstraintPropertyNames.Name }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
existingNames.Add(checkConstraint.Name);
|
existingNames.Add(checkConstraint.SystemName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
for (int i = 0; i < table.EdgeConstraints.Items.Count; i++)
|
for (int i = 0; i < table.EdgeConstraints.Items.Count; i++)
|
||||||
{
|
{
|
||||||
var edgeConstraint = table.EdgeConstraints.Items[i];
|
var edgeConstraint = table.EdgeConstraints.Items[i];
|
||||||
if (existingNames.Contains(edgeConstraint.Name))
|
if (existingNames.Contains(edgeConstraint.SystemName))
|
||||||
{
|
{
|
||||||
errors.Add(new TableDesignerIssue()
|
errors.Add(new TableDesignerIssue()
|
||||||
{
|
{
|
||||||
Description = SR.NoDuplicateConstraintNameRuleDescription(edgeConstraint.Name, i + 1),
|
Description = SR.NoDuplicateConstraintNameRuleDescription(edgeConstraint.SystemName, i + 1),
|
||||||
PropertyPath = new object[] { TablePropertyNames.EdgeConstraints, i, EdgeConstraintPropertyNames.Name }
|
PropertyPath = new object[] { TablePropertyNames.EdgeConstraints, i, EdgeConstraintPropertyNames.Name }
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
existingNames.Add(edgeConstraint.Name);
|
existingNames.Add(edgeConstraint.SystemName);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return errors;
|
return errors;
|
||||||
|
|||||||
Reference in New Issue
Block a user