Как проверить, существует ли число в SQL - PullRequest
0 голосов
/ 17 апреля 2019

У меня есть хранимая процедура, и я должен изменить ее, чтобы она не принимала ни пустую строку, ни ноль.

У меня сейчас есть это как часть хранимой процедуры

IF NOT EXISTS (SELECT * FROM dbo.tblUserCode WHERE iUserID = @UserID)
BEGIN
    INSERT INTO dbo.tblUserCode (iUserID, sCode) 
    VALUES (@UserID, @Unlock)
END 

Однако я не хочу ничего вводить в таблицу, если значение равно нулю или строке. В таблице есть только идентификаторы пользователей с кодом. В настоящее время он хранит 0 и пустые строки, когда пользователь создается, и они оставляют слот пустым. Я знаю, что это эта строка, потому что мой код доступа проверяет, является ли код длиной 4 цифры, и является ли он только цифрами, но когда он возвращает строку, которая сохраняется в таблице.

1 Ответ

0 голосов
/ 17 апреля 2019

Похоже, что вы используете MS SQL Server (не ясно из ваших тегов) в качестве вашей СУБД. В этом случае:

NOT ISNULL(sCode,'')='' 

Проверяет, не является ли sCode нулевым или пустой строкой. Добавьте его в ваше заявление IF.

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