Что такое допустимый класс пространственных объектов и имена таблиц в ArcGIS Desktop?

10

Каковы правила именования допустимых классов пространственных объектов и таблиц в ArcGIS Desktop, и существует ли какой-либо подтверждающий документ, который может объяснить все ограничения именования наборов данных?

Ирфан
источник
1
Зависит от того, какой тип данных вы используете, а?
Чед Купер
Я использую файл формы и файловую
базу
3
что-то плохо документированное: не используйте число для первого символа набора данных.
Кирк Куйкендалл
Это именно моя проблема, я пытаюсь использовать число для первого символа набора данных, нет проблем в файле формы, но файловая
база
Извините, но пытаюсь решить похожую проблему: при импорте в gdb как добавить дату перед именем? пример: name.shp -> 120706_name класс объектов
Лука Мойана

Ответы:

19

Это в документации: определение свойств класса объектов

В частности:

Имена должны начинаться с буквы, а не с цифры или специального символа, такого как звездочка (*) или знак процента (%). Имена не могут содержать никаких символов, кроме буквенно-цифровых символов и символов подчеркивания.

Дерек Суингли
источник
7

Swingley ответил на этот вопрос выше ... Но, с точки зрения автоматизации этой процедуры, вы могли бы написать скрипт, который реализует метод IFieldChecker.ValidateTableName . Если я правильно помню, он возвращает исправленное имя с недопустимыми символами, замененными подчеркиванием.

Якуб Сисак География
источник
Я знаю о validateTableName, но здесь моя ситуация, у меня есть файлы формы "1-значный postcode.shp, 2-значный postcode.shp", и когда я использую validateTableName для этих двух файлов формы, я получу результат для обоих "_Digit_postcode.shp ». Я думаю, что мне нужно написать свою собственную функцию для этой проверки имени таблицы.
Ирфан
В целом, поправьте меня, если я ошибаюсь, но если вы используете параметр рабочей области, вы должны получить "_Digit_postcode.shp" и "_Digit_postcode_1.shp"
Якуб Сисак
0

Начиная с ArcGIS 10.3, есть arcpyфункция ValidateTableName:

Принимает имя таблицы и путь к рабочей области и возвращает действительное имя таблицы для рабочей области. Символ подчеркивания «_» заменит любой недопустимый символ, найденный в имени таблицы, и соблюдает ограничения имени для рабочей области. Ограничения имени таблицы зависят от конкретной используемой СУБД.

Алекс Терешенков
источник