SQL server2008: ошибка сохранения при изменении дизайна таблицы
s http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>tyle=»clear:both;»>
SQL server2008:
Изменения конструкции таблиц в базе данных не могут быть сохранены со следующими ошибками:
Изменения не могут быть сохранены. Ваши изменения требуют удаления и повторного создания следующих таблиц, вы внесли изменения в таблицы, которые не могут быть созданы повторно, или применили параметр изменения «Блокировать вновь созданные таблицы, чтобы предотвратить спрос»。
Решение:
Нажмите на инструмент на панели инструментов
Выберите опцию в инструменте
Развернуть Дизайнер или (Desigeners)
Нажмите Дизайнер таблиц и Дизайнер баз данных
Неконтролируемый,Запретить сохранение изменений, которые требуют пересоздания таблицыЗатем нажмите ОК
Измените таблицу и сохраните ее.
Интеллектуальная рекомендация
19.03.21 Я загрузил комплексные обучающие видеоуроки Photoshop CC 2015 и обучающие видеоуроки по новым функциям PS CC 2015. Я просмотрел несколько видео, но мне кажется, что они в основном объясняют н…
…
проверка данных весеннего mvc Два способа проверки данных Spring MVC: 1.JSR303 2.Hibernate Validator Второй метод является дополнением к первому методу Шаги для проверки данных с использованием Hibern…
Существует два способа вызова между сервисами Springcloud: RestTemplate и Feign. Здесь мы представляем сервисы вызова RestTemplate. 1. Что такое RestTemplate RestTemplate — это структура веб-запросов …
1. Понимать предварительный, средний, последующий порядок и иерархическую последовательность бинарных деревьев; Свяжите язык C со структурой данных двоичного дерева; Освойте с…
Вам также может понравиться
Последнее обучение, как использовать Kaldi, чтобы проснуться без использования WSTF, поэтому вам нужно глубоко пойти в Kaldi для обучения. Временное состояние обучения. Три изображения представляют со…
Во время простоя некоторые веб-страницы, которые мы создали, не были завершены, но не хотят, чтобы другие видели, вы можете создать простой эффект шифрования страницы на странице этой веб-страницы, ан…
Расширенные статьи серии Zookeeper 1. NIO, ZAB соглашение, 2PC представления концепции 2. Лидер выборов 3. Рукописный распределенный замок, центр настройки ==================================== 1. NIO,…
Посмотрите на конечный эффект первым DemoPreview.gif SETP1 эффект капли воды Первая реакция на эффект капли воды — нарисовать замкнутую кривую. С помощью события MotionEvent измените радиус во время п…
…
Причины возникновения ошибки «Сохранение изменений запрещено»
Дело в том, что при изменении таблицы с помощью конструктора с изменением структуры ее метаданных, чтобы сохранить все изменения, необходимо пересоздать таблицу на основе этих изменений, т.е. создать ее заново. Вы этого не видите, но это будет делать сама среда Management Studio.
Однако это действие может привести к потере метаданных и прямой потере данных во время повторного создания таблицы.
Поэтому по умолчанию в среде SQL Server Management Studio включен параметр «Запретить сохранение изменений, требующих повторного создания таблицы». И если Вы используете графический конструктор таблиц, чтобы внести изменения в таблицу, например, Вы выполняете следующие действия:
- Меняете параметр «Разрешить значения NULL» для столбца;
- Изменяете порядок столбцов в таблице;
- Изменяете тип данных столбца;
- Добавляете новый столбец.
то в этих случаях Вы будете получать именно такую ошибку.
Ошибка «Сохранение изменений запрещено» в среде SSMS. Причины и способы устранения
Всем привет! Сегодня я расскажу об ошибке «Сохранение изменений запрещено», которая возникает в среде SQL Server Management Studio при работе с конструктором таблиц, будут рассмотрены причины ее возникновения и, конечно же, способы исправления данной ошибки.
Ошибка «Сохранение изменений запрещено»
Итак, ситуация: Вы вносите изменения в таблицу с помощью конструктора в среде SQL Server Management Studio, однако при попытке сохранить изменения Вы получаете следующую ошибку
Сохранение изменений запрещено. Чтобы сохранить изменения, необходимо удалить и повторно создать следующие таблицы. Либо изменения вносятся в таблицу, которую невозможно создать повторно, либо включен параметр «Запретить сохранение изменений, требующих повторного создания таблицы».
Причины возникновения ошибки «Сохранение изменений запрещено»
Дело в том, что при изменении таблицы с помощью конструктора с изменением структуры ее метаданных, чтобы сохранить все изменения, необходимо пересоздать таблицу на основе этих изменений, т.е. создать ее заново. Вы этого не видите, но это будет делать сама среда Management Studio.
Однако это действие может привести к потере метаданных и прямой потере данных во время повторного создания таблицы.
Поэтому по умолчанию в среде SQL Server Management Studio включен параметр «Запретить сохранение изменений, требующих повторного создания таблицы». И если Вы используете графический конструктор таблиц, чтобы внести изменения в таблицу, например, Вы выполняете следующие действия:
- Меняете параметр «Разрешить значения NULL» для столбца;
- Изменяете порядок столбцов в таблице;
- Изменяете тип данных столбца;
- Добавляете новый столбец.
то в этих случаях Вы будете получать именно такую ошибку.
Способы устранения ошибки «Сохранение изменений запрещено»
Вы можете спросить, «а как же тогда вносить изменения в таблицы, если существует прямой запрет на внесения изменений?».
Конечно же, существуют способы устранения данной ошибки и внесение изменений в таблицы. В частности, Вы можете использовать два.
Использовать T-SQL
Первый, и рекомендованный – это использовать инструкции T-SQL.
В качестве примера давайте представим, что у нас есть таблица Goods, и она имеет следующие данные.
Заметка! Если Вас интересует язык SQL, то рекомендую почитать книгу «SQL код» – это самоучитель по языку SQL для начинающих программистов. В ней очень подробно рассмотрены основные конструкции языка.
Изменяем параметр «Разрешить значения NULL»
Как видим, столбец Price на текущий момент у нас может принимать значения NULL, однако мы решили сделать этот столбец обязательным к заполнению и запретить хранение в нем значений NULL.
Если мы будем использовать конструктор таблиц, то мы получим ошибку «Сохранение изменений запрещено».
Чтобы запретить хранение NULL значений, мы можем выполнить следующую инструкцию SQL
Однако помните о том, что в столбце на момент выполнения инструкции уже не должно быть значений NULL, Вы их должны устранить.
Изменяем тип данных столбца
Если необходимо изменить тип данных столбца, то нужно написать практически точно такую же инструкцию, только при этом указав новый тип данных.
В данном случае мы изменили тип данных столбца Price с MONEY на NUMERIC.
Добавляем новый столбец
Если требуется добавить новый столбец, то Вы можете использовать следующую инструкцию.
В этом примере мы добавили столбец ProductDescription с типом данных VARCHAR.
К сожалению, изменение порядка столбцов в таблице на языке T-SQL не поддерживается, это возможно только путем пересоздания таблицы.
Идентификаторы элементов управления Explorer-Style
пакет средств разработки Windows Software Development Kit (SDK) предоставляет шаблон диалогового окна по умолчанию для диалоговых окон старого стиля, но не включает шаблон по умолчанию для диалоговых окон в стиле обозревателя. Это связано с тем, что диалоговые окна в стиле обозревателя позволяют добавлять собственные элементы управления, но не поддерживают изменение шаблона для стандартных элементов управления. Однако в некоторых случаях может потребоваться знать идентификаторы элементов управления, используемые в шаблонах по умолчанию. Например, для сообщений CDM _ Хидеконтрол и CDM _ сетконтролтекст требуется идентификатор элемента управления.
В следующей таблице показаны идентификаторы стандартных элементов управления в диалоговых окнах Открытие и Сохранение в стиле обозревателя. Идентификаторы — это константы, определенные в Длгс. h и Winuser. h.
Идентификатор элемента управления | Описание элемента управления |
---|---|
chx1 | Флажок только для чтения |
cmb1 | Раскрывающееся поле со списком, в котором отображается список фильтров типов файлов |
stc2 | Метка для поля со списком cmb1 |
cmb2 | Раскрывающийся список, отображающий текущий диск или папку, который позволяет пользователю выбрать диск или папку для открытия |
stc4 | Метка для поля со списком cmb2 |
cmb13 | Раскрывающийся список, отображающий имя текущего файла, позволяет пользователю ввести имя открываемого файла и выбрать файл, который был открыт или сохранен недавно. Это предназначено для ранее совместимых с обозревателем приложений без обработчика или шаблона диалогового окна. Сравните с edt1. |
edt1 | Элемент управления «поле ввода», который отображает имя текущего файла, или позволяет пользователю ввести имя открываемого файла. Сравните с cmb13. |
stc3 | Метка для поля со списком cmb13 и элемента управления Edit edt1 |
lst1 | Список, отображающий содержимое текущего диска или папки |
stc1 | Метка для списка lst1 |
IDOK | Кнопка « ОК » (кнопка «Отправить») |
IDCANCEL | Кнопка «Отмена» (кнопка «Отправить») |
пшхелп | Кнопка « Справка » (кнопка «Отправить») |
Обходной путь
Чтобы решить эту проблему, используйте SQL Transact-SQL для внесения изменений в структуру ALTER TABLE метаданных таблицы.
Например, чтобы изменить столбец даты типа MyDate в таблице Под названием MyTable, чтобы принять значения NULL, которые можно использовать:
alter table MyTable alter column MyDate7 datetime NULL
Важно!
Настоятельно рекомендуется не работать над этой проблемой, отключив параметр Предотвращение сохранения изменений, которые требуют параметра повторного создания таблицы. Дополнительные сведения о рисках отключения этого параметра см. в разделе “Дополнительные сведения”.
SQL Server 2008 «Предотвратить сохранение изменений, требующих повторного создания таблицы»
http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>style=»clear:both;»>
Решение ошибки SQL Server 2008 «предотвратить сохранение изменений, требующих повторного создания таблицы» — это основное содержание, которое мы собираемся представить в этой статье. Ситуация такова: когда мы вставляем или изменяем любой столбец после построения таблицы с помощью SQL Server 2008, Совет: Когда пользователи изменяют структуру таблицы в SQL Server 2008 Enterprise Manager, они должны сначала удалить исходную таблицу, а затем заново создать новую таблицу, чтобы завершить изменение таблицы.
Если изменение было принудительным, появится следующий запрос: Сохранять изменение нельзя. Внесенные вами изменения требуют удаления и воссоздания следующих таблиц. Вы внесли изменения в символы, которые невозможно воссоздать, или включили параметр «Запретить сохранение изменений, требующих повторного создания таблиц». Как показано ниже:
Если вы хотите удалить это приглашение, откройте SQL Server 2008 вверху.
Решение:
Инструменты -> Параметры -> Слева есть дизайнер -> Дизайнер таблиц и Дизайнер баз данных -> Предотвратить сохранение изменений, требующих повторного создания таблицы (справа). Просто удалите крючок.
Интеллектуальная рекомендация
19.03.21 Я загрузил комплексные обучающие видеоуроки Photoshop CC 2015 и обучающие видеоуроки по новым функциям PS CC 2015. Я просмотрел несколько видео, но мне кажется, что они в основном объясняют н…
…
проверка данных весеннего mvc Два способа проверки данных Spring MVC: 1.JSR303 2.Hibernate Validator Второй метод является дополнением к первому методу Шаги для проверки данных с использованием Hibern…
Существует два способа вызова между сервисами Springcloud: RestTemplate и Feign. Здесь мы представляем сервисы вызова RestTemplate. 1. Что такое RestTemplate RestTemplate — это структура веб-запросов …
1. Понимать предварительный, средний, последующий порядок и иерархическую последовательность бинарных деревьев; Свяжите язык C со структурой данных двоичного дерева; Освойте с…
Вам также может понравиться
Последнее обучение, как использовать Kaldi, чтобы проснуться без использования WSTF, поэтому вам нужно глубоко пойти в Kaldi для обучения. Временное состояние обучения. Три изображения представляют со…
Во время простоя некоторые веб-страницы, которые мы создали, не были завершены, но не хотят, чтобы другие видели, вы можете создать простой эффект шифрования страницы на странице этой веб-страницы, ан…
Расширенные статьи серии Zookeeper 1. NIO, ZAB соглашение, 2PC представления концепции 2. Лидер выборов 3. Рукописный распределенный замок, центр настройки ==================================== 1. NIO,…
Посмотрите на конечный эффект первым DemoPreview.gif SETP1 эффект капли воды Первая реакция на эффект капли воды — нарисовать замкнутую кривую. С помощью события MotionEvent измените радиус во время п…
…
SQL SERVER 2008 «предотвращение сохранения изменений, требующих повторного создания таблицы»
http-equiv=»Content-Type» content=»text/html;charset=UTF-8″>style=»clear:both;»>
После того, как MS SQL Server 2008 завершит построение таблицы, если вы хотите вставить или изменить какой-либо столбец, он предложит: Когда пользователь изменяет структуру таблицы в SQL Server 2008 Enterprise Manager, он должен сначала удалить исходную таблицу, а затем заново создать новую таблицу, чтобы завершить изменение таблицы, если изменение было принудительным. Появится следующая подсказка: Сохранять изменения нельзя. Внесенные вами изменения требуют удаления и воссоздания следующих таблиц. Вы внесли изменения в символы, которые невозможно воссоздать, или включили параметр «Запретить сохранение изменений, требующих повторного создания таблиц».
Если вы хотите удалить это приглашение, откройте SQL 2008 вверху Инструменты -> Параметры -> Слева находится дизайнер -> Дизайнер таблиц и Дизайнер баз данных -> Запретить сохранение изменений, требующих повторного создания таблицы (справа). Просто удалите крючок
вперед от1000SEO
Адрес ссылки на эту статью: SQL SERVER 2008 «Предотвратить сохранение изменений, требующих повторного создания таблицы».
Интеллектуальная рекомендация
19.03.21 Я загрузил комплексные обучающие видеоуроки Photoshop CC 2015 и обучающие видеоуроки по новым функциям PS CC 2015. Я просмотрел несколько видео, но мне кажется, что они в основном объясняют н…
…
проверка данных весеннего mvc Два способа проверки данных Spring MVC: 1.JSR303 2.Hibernate Validator Второй метод является дополнением к первому методу Шаги для проверки данных с использованием Hibern…
Существует два способа вызова между сервисами Springcloud: RestTemplate и Feign. Здесь мы представляем сервисы вызова RestTemplate. 1. Что такое RestTemplate RestTemplate — это структура веб-запросов …
1. Понимать предварительный, средний, последующий порядок и иерархическую последовательность бинарных деревьев; Свяжите язык C со структурой данных двоичного дерева; Освойте с…
Вам также может понравиться
Последнее обучение, как использовать Kaldi, чтобы проснуться без использования WSTF, поэтому вам нужно глубоко пойти в Kaldi для обучения. Временное состояние обучения. Три изображения представляют со…
Во время простоя некоторые веб-страницы, которые мы создали, не были завершены, но не хотят, чтобы другие видели, вы можете создать простой эффект шифрования страницы на странице этой веб-страницы, ан…
Расширенные статьи серии Zookeeper 1. NIO, ZAB соглашение, 2PC представления концепции 2. Лидер выборов 3. Рукописный распределенный замок, центр настройки ==================================== 1. NIO,…
Посмотрите на конечный эффект первым DemoPreview.gif SETP1 эффект капли воды Первая реакция на эффект капли воды — нарисовать замкнутую кривую. С помощью события MotionEvent измените радиус во время п…
…
Фильтрация
Как Вы могли заметить из первого примера, я «вручную» добавил расширение .txt к желаемому названию файла, так как, на данный момент, выпадающий список с расширениями «Save as type» пуст (см. скриншот). Так же как и для OpenFileDialog, этот список контролируется с помощью свойства Filter, которое в использование является таким же.
Подробности работы свойства Filter Вы можете найти в предыдущей главе OpenFileDialog, в которой мы посвятили время этому механизму.
С фильтром, определенным выше, конечный результат SaveFileDialog будет выглядеть вот так:
В этом окне Вы можете ввести название файла без специального расширеня (оно может быть выбрано из выпадающего списка)
Так же этот список показывает пользователю — какие форматы файлов поддерживает приложение, что конечно же, крайне важно
Фильтры
Сведения в этом разделе относятся к диалоговым окнам «обозреватель-стиль» и « старый стиль» и « Сохранить как ».
Можно указать фильтры имен файлов, чтобы помочь пользователю в ограничении имен файлов, отображаемых в диалоговом окне. Фильтр имен файлов состоит из пары строк, завершающихся нулем, описания и шаблона, Объединенных в другой. В диалоговом окне отображается описание, позволяющее пользователю выбрать используемый фильтр. и использует шаблон для выбора файлов для вывода.
Чтобы указать фильтры, установите элемент лпстрфилтер структуры OpenFileName , чтобы он указывал на буфер, содержащий массив пар строк фильтра. За последней строкой в массиве должен следовать дополнительный символ null.
Строка шаблона может представлять собой сочетание допустимых символов имени файла и звездочки ( * ). Звездочка — это подстановочный знак, который представляет любое сочетание допустимых символов имени файла. В диалоговом окне отображаются только те файлы, которые соответствуют шаблону. Чтобы указать несколько шаблонов для одного описания, необходимо использовать точку с запятой (;) для разделения шаблонов
Обратите внимание, что пробелы в строке шаблона могут привести к непредвиденным результатам
В следующем фрагменте кода указываются два фильтра. Фильтр с описанием «источник» имеет два шаблона. Если пользователь выбирает этот фильтр, в диалоговом окне отображаются только файлы с. C и. Расширения CXX
Обратите внимание, что в языке программирования C строка, заключенная в двойные кавычки, завершается нулем
Элемент нфилтериндекс структуры OpenFileName задает индекс, который указывает, какой фильтр используется в первоначальном диалоговом окне. Первый фильтр в буфере имеет индекс 1, второй 2 и т. д. Если пользователь изменяет фильтр при использовании диалогового окна, для элемента нфилтериндекс задается индекс выбранного фильтра в поле Return.
Можно создать настраиваемый фильтр, задав для элемента лпстркустомфилтер адрес буфера, содержащего один фильтр, и установив для элемента нмакскустфилтер размер буфера в символах или байтах. В диалоговом окне Пользовательский фильтр всегда помещается в начало списка фильтров, а в случае возврата всегда обновляет часть шаблона фильтра с помощью шаблона из фильтра, выбранного пользователем.
Для диалоговых окон в стиле обозревателя расширение по умолчанию может измениться, если пользователь выбирает другой фильтр. Если пользователь выбирает фильтр, первый шаблон которого имеет форму * .XXX (т. е. расширение не содержит подстановочный знак), в диалоговом окне в качестве расширения по умолчанию используется xxx . Это происходит только в том случае, если в элементе лпстрдефекст структуры OpenFileName указано расширение по умолчанию. Например, если пользователь выбирает «source \ 0» * . C; * . CXX \ 0 «фильтр, расширение по умолчанию изменяется на» C «. Однако, если фильтр был определен как «Source 0» \ * . * \ В C 0 «расширение по умолчанию не изменится, так как расширение содержит подстановочный знак.
сообщение уведомления CDN _ инклудеитем предоставляет другой способ фильтрации имен, отображаемых в диалоговом окне. Чтобы использовать это сообщение, укажите процедуру-обработчик офнхукпрок и укажите флаг ОФН _ енаблеинклуденотифи в структуре OpenFileName при создании этого диалогового окна. каждый раз, когда пользователь открывает папку, диалоговое окно отправляет CDN уведомление _ в процедуру обработчика для каждого элемента во вновь открытой папке. Возвращаемое значение процедуры-обработчика указывает, должно ли диалоговое окно отображать элемент в списке элементов папки.
7 ответов
Лучший ответ
Перейдите в Инструменты -> Параметры -> Дизайнеры-> Снимите флажок «Запретить сохранение изменений, требующих повторного создания таблицы». Вуаля.
Это происходит потому, что иногда необходимо отбросить и воссоздать таблицу, чтобы что-то изменить. Это может занять некоторое время, поскольку все данные необходимо скопировать во временную таблицу, а затем повторно вставить в новую таблицу. Поскольку SQL Server по умолчанию не доверяет вам, вам нужно сказать: «Хорошо, я знаю, что делаю, теперь позвольте мне делать свою работу».
620
Pedro
28 Дек 2009 в 11:57
Инструменты> Параметры
Снимите флажок выше
122
Prasanna
25 Сен 2012 в 12:07
Вместо того, чтобы снимать флажок (плохое решение), вы должны ПРЕКРАТИТЬ редактировать данные таким образом. Если данные необходимо изменить, сделайте это с помощью сценария, чтобы вы могли легко перенести их в рабочую среду и чтобы они находились под контролем версий. Это также упрощает обновление изменений тестирования после того, как производство было передано разработчикам, чтобы разработчики могли работать с более свежими данными.
16
HLGEM
28 Дек 2009 в 21:34
Зайдите в SSMS и попробуйте это
Меню >> Инструменты >> Параметры >> Конструкторы >> Снимите флажок «Запретить сохранение изменений, требующих повторного создания таблицы».
Вот очень хорошее объяснение этому: http: // blog.sqlauthority.com/2009/05/18/sql-server-fix-management-studio-error-saving-changes-in-not-permitted-the-changes-you-have-made-require-the-following- таблицы, которые нужно удалить и создать заново, у вас есть-либо-внесены-изменения-в-вкладки /
16
Rolwin Crasta
29 Окт 2014 в 07:31
Многие изменения, которые вы можете сделать очень легко и визуально в редакторе таблиц в SQL Server Management Studio, на самом деле требуют, чтобы SSMS отбросил таблицу в фоновом режиме и воссоздал ее с нуля. Даже простые вещи, такие как переупорядочение столбцов, не могут быть выражены в стандартном операторе SQL DDL — все, что может сделать SSMS, — это удалить и воссоздать таблицу.
Эта операция может а) занять очень много времени для большой таблицы или б) может даже выйти из строя по разным причинам (например, ограничения FK и прочее). Таким образом, SSMS в SQL Server 2008 представила эту новую опцию, которую уже определили другие ответы.
Поначалу может показаться нелогичным предотвращать такие изменения — и это определенно неприятно для сервера разработки. Но на рабочем сервере эта опция и ее значение по умолчанию, предотвращающее такие изменения, становятся потенциальным спасением!
14
marc_s
28 Дек 2009 в 12:38
Это риск отключить эту опцию. Вы можете потерять изменения, если у вас включено отслеживание изменений (ваши таблицы).
Крис
6
Chris
30 Дек 2009 в 15:11
Отключение отслеживания изменений для базы данных или таблицы
Перед отключением отслеживания изменений для базы данных необходимо отключить его для всех таблиц в этой базе. Чтобы определить, для каких таблиц было включено отслеживание изменений, воспользуйтесь представлением каталога sys.change_tracking_tables .
Если ни для одной из таблиц базы данных отслеживание изменений не настроено, то оно может быть отключено и на уровне базы данных. В следующем примере показано, как отключить отслеживание изменений для базы данных с помощью инструкции ALTER DATABASE.
В следующем примере показано, как отключить отслеживание изменений для таблицы с помощью инструкции ALTER TABLE.
Инициализация диалогового окна
Вы Инициализирует диалоговое окно и его содержимое при обработке сообщения WM _ инитдиалог . Наиболее распространенной задачей является инициализация элементов управления для отражения текущих настроек диалогового окна. Другой распространенной задачей является центрирование диалогового окна на экране или в окне его владельца. Полезной задачей для некоторых диалоговых окон является установка фокуса ввода на указанный элемент управления вместо принятия фокуса ввода по умолчанию.
В следующем примере диалоговое окно обрабатывает диалоговое окно и устанавливает фокус ввода при обработке сообщения WM _ инитдиалог . Для центрирования диалогового окна процедура извлекает прямоугольники окна для диалогового окна и окна владелец и вычисляет новую точку для диалогового окна. Чтобы установить фокус ввода, процедура проверяет параметр wParam , чтобы определить идентификатор фокуса ввода по умолчанию.
В приведенных выше инструкциях процедура использует функцию getHandler для получения маркера окна-владельца для диалогового окна. Функция возвращает обработчик окна владельца в диалоговые окна, а родительский окно — в дочерние окна. Поскольку приложение может создать диалоговое окно, не имеющее владельца, процедура проверяет возвращенный обработчик и использует функцию жетдесктопвиндов для получения маркера окна рабочего стола при необходимости. После вычисления новой должности процедура использует функцию SetWindowPos для перемещения диалогового окна, указывая _ верхнее значение HWND, чтобы убедиться, что диалоговое окно остается в верхней части окна владельца.
Перед установкой фокуса ввода процедура проверяет идентификатор элемента управления фокуса ввода по умолчанию. Система передает маркер окна фокуса ввода по умолчанию в параметре wParam . Функция жетдлгктрлид возвращает идентификатор элемента управления, идентифицируемого маркером окна. Если идентификатор не соответствует правильному идентификатору, процедура использует функцию SetFocus для установки фокуса ввода. Функция жетдлгитем необходима для получения маркера окна требуемого элемента управления.