Как я могу запретить пользователю сохранять запись с нулевым значением? - PullRequest
0 голосов
/ 10 июня 2011

Я очень новичок в программировании баз данных, и у меня есть небольшая база данных (SQL CE 3.5). Он имеет столбец «LastName», который не принимает значения NULL. Я использую BindingNavigator, чтобы обойти. Нужно ли устанавливать событие, подобное приведенному ниже, для каждого элемента управления на этом навигаторе. Или есть более простой способ обойти это?

Я использую C # с .NET 3.5 и WinForms. Это тоже всего одна таблица дб.

        if (!string.IsNullOrEmpty(lastNameTextBox.Text))

        {
            this.Validate();
            this.tblMembersBindingSource.EndEdit();
            this.tableAdapterManager.UpdateAll(this.dataSet1);
        }
        else
        {
            MessageBox.Show("The Last Name Field cannot be empty");
        }

Спасибо

Ответы [ 2 ]

2 голосов
/ 10 июня 2011

Вы действительно должны использовать:

if (!string.IsNullOrEmpty(lastNameTextBox.Text))
{
  ...
}

Кроме того, почему бы просто не использовать RequiredFieldValidator, чтобы убедиться, что форму нельзя отправить обратно без значения в этом поле?

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator.aspx

1 голос
/ 10 июня 2011

Есть несколько способов сделать это.

Первый будет в вашем коде SQL. Вы могли бы использовать isnull(lastname, 'something') - http://msdn.microsoft.com/en-us/library/ms184325.aspx

Или вы можете присвоить столбцу значение по умолчанию в базе данных -

ALTER TABLE your_table_name ADD CONSTRAINT
Name_of_Constraint DEFAULT 'value' FOR column_name

Это работает для вас?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...