Шаг 42 - Свойство Name

Описание
Задает или возвращает определяемое пользователем имя объекта доступа к данным (DAO). Для объекта, не добавленного в семейство, это свойство доступно для чтения/записи.

Значение
Задаваемое или возвращаемое значение является выражением типа String, указывающим имя объекта. Имя объекта должно начинаться с буквы. Максимальный размер (в символах) значения свойства Name определяется типом объекта, как показано в разделе "Дополнительные сведения". Имя может содержать цифры и символы подчеркивания ( _ ), но не должно содержать знаки препинания.

Замечания
Объект TableDef, QueryDef, Field, Index, User и Group не может иметь имя, совпадающее с именем другого объекта в том же семействе.
Значением свойства Name объекта Recordset, открытого с помощью инструкции SQL, становятся первые 256 символов инструкции SQL.
Допускается использование свойства Name в инструкциях Dim в программах Visual Basic для приложений (VBA) для создания новых экземпляров объекта.
Для многих объектов доступа к данным (DAO) свойство Name отражает имя, зарегистрированное в объекте Database. Это же относится к объектам TableDef, Field или QueryDef. Прямой связи между именем объекта и именем используемой для ссылок на объект базы данных объектной переменной не существует.
Использование для чтения/записи свойства Name при доступе к объекту определяется типом объекта, к которому относится свойство, а также тем, был ли объект добавлен в семейство. В рабочей области ODBCDirect свойство Name добавленного объекта всегда доступно только для чтения. В следующей таблице показано, в каких случаях свойство Name в рабочей области Microsoft Jet доступно для чтения записи или только для чтения для объекта, добавленного в семейство (если иное не указано). Для случая, когда свойство допускает чтение/запись, приведена максимальная длина значения (в символах).

Объект				Применение	Длина
Container				Только чтение	
Connection			Только чтение	
Database				Только чтение	
Document				Только чтение	
Field		
  Не добавлен			Чтение/запись	64
  Добавлен в Index			Только чтение	
  Добавлен в QueryDef		Только чтение	
  Добавлен в Recordset		Только чтение	
  Добавлен в TableDef 
  (таблица в базе данных)		Чтение/запись	64
  Добавлен в TableDef 
  (присоединенная таблица )		Только чтение	
  Добавлен в Relation		Только чтение	
Group		
  Не добавлен			Чтение/запись	20
  Добавлено			Только чтение	
Index		
  Не добавлен			Чтение/запись	64
  Добавлено			Только чтение	
Parameter				Только чтение	
Property		
  Не добавлен			Чтение/запись	64
  Добавлено			Только чтение	
  Встроенный			Только чтение	
QueryDef		
  Не добавлен			Чтение/запись	64
  Временный			Только чтение	
  Добавлено			Чтение/запись	64
Recordset				Только чтение	
Relation		
  Не добавлен			Чтение/запись	64
  Добавлено			Только чтение	
TableDef				Чтение/запись	64
User		
  Не добавлен			Чтение/запись	20
  Добавлено			Только чтение	
Workspace		
  Не добавлен			Чтение/запись	20
  Добавлено			Только чтение

Пример
Следующая программа использует свойство Name для указания имени нового объекта, для вывода перечня объектов в семействе и для удаления объекта из семейства.

Sub NameX()

	Dim dbsNorthwind As Database
	Dim qdfNew As QueryDef
	Dim qdfLoop As QueryDef

	Set dbsNorthwind = OpenDatabase("Борей.mdb")

	With dbsNorthwind
		' Создает новый постоянный объект QueryDef
		' и добавляет его в семейство QueryDefs.
		Set qdfNew = .CreateQueryDef()
		qdfNew.Name = "NewQueryDef"
		qdfNew.SQL = "SELECT * FROM Сотрудники"
		.QueryDefs.Append qdfNew
		' Отображает семейство имена объектов QueryDef 
		' в семействе QueryDefs.
		Debug.Print "Имена запросов в " & .Name
		For Each qdfLoop In .QueryDefs
			Debug.Print "    " & qdfLoop.Name
		Next qdfLoop
		' Удаляет новый объект QueryDef, созданный
		' только для демонстрации.
		.QueryDefs.Delete qdfNew.Name
		.Close
	End With
End Sub

Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем.