これを SQL Server で実行すると、データ型が nvarchar(max) のテーブル フィールド/列の CHARACTER_MAXIMUM_LENGTH 列に -1 が定義されています。長さが定義されていない場合、これは常に -1 に設定されていると想定できますか?
SELECT COLUMN_NAME,DATA_TYPE,CHARACTER_MAXIMUM_LENGTH,IS_NULLABLE,ORDINAL_POSITION
FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE 'Ancestor_C%'