handle hierarchyid correctly (#1450)

This commit is contained in:
Alan Ren
2022-03-31 15:18:15 -07:00
committed by GitHub
parent 2ace786d95
commit 3452c43a51
2 changed files with 13 additions and 1 deletions

View File

@@ -243,7 +243,7 @@ namespace Microsoft.SqlTools.ServiceLayer.QueryExecution.Contracts
SqlDbType = SqlDbType.NVarChar;
break;
default:
SqlDbType = DataTypeName.EndsWith(".sys.hierarchyid") ? SqlDbType.NVarChar : SqlDbType.Udt;
SqlDbType = DataTypeName.EndsWith(".sys.hierarchyid") ? SqlDbType.Binary : SqlDbType.Udt;
break;
}
}

View File

@@ -196,6 +196,18 @@ namespace Microsoft.SqlTools.ServiceLayer.IntegrationTests.QueryExecution
await ExecuteAndVerifyResult("SELECT geometry::STGeomFromText('POINT (-96.70 40.84)',4326) [Geo]", "0xE6100000010CCDCCCCCCCC2C58C0EC51B81E856B4440");
}
[Test]
public async Task SysnameTypeTest()
{
await ExecuteAndVerifyResult("SELECT CAST('testsysname' AS SYSNAME)", "testsysname");
}
[Test]
public async Task HierarchyIdTypeTest()
{
await ExecuteAndVerifyResult("SELECT CAST(0x58 as hierarchyid)", "0x58");
}
private async Task ExecuteAndVerifyResult(string queryText, string expectedValue)
{
// Given a connection to a live database