Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: как получить true/false от SQL запроса ??
     
    
Добавлено: 14.09.10 12:22
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
    
 qtronix | Web-сайт: hkmeteor.ru
      
       
  
Господа день добрый!!!
 
    
Прошу сильно не пинать, я в програмировании ньюб, но вопрос вот в чем 
есть некая БД на MySQL, в БД есть таблица users в таблице поля с логинами и паролями
подскажите плз как мне сделать проверку на существование некой записи ?? 
я делаю запрос 
но как мне получить был ли этот запрос rtue или false ??
либо есть какойто другой способ проверки наличия записи?? 
заранее благодарен за ответы.!!
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 10
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа:
 Сергей
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 558230345 
Вопросов: 7
Ответов: 91
      
 Профиль |  | #1
       
Добавлено:  14.09.10 12:46
       
    
       
  
я бы сделал так....
 
    
"SELECT COUNT(*) FROM users WHERE login = " & Login & " AND password = " & Passwd & ""
тогда тебе вернется количество записей. и результат всегда будет возвращаться.
Если = 0 , то нет такого соответствия(или FASE)
Если = 1 , то все нормально(или TRUE)
иначе надо смотреть в программе, почему больше 1 совпадения.
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа:
 qtronix
![]()
![]()
![]()
![]()
![]()
![]()
Вопросов: 4
Ответов: 5
      
 Web-сайт:  
 Профиль |  | #2
      
Добавлено:  14.09.10 13:08
       
    
       
  
Ок спасибо большое 
 
    
еще вопросик, а то чтото я совсем запутался 
вот
как мне получить 0 или 1 ?? 
я чтото никак не допру ?? 
если несложно конечно....
Просто не доконца еще разобрался со всеми этими датасетами,  датаадаптерами, и прочей датахренью 
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа:
 Сергей
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 558230345 
Вопросов: 7
Ответов: 91
      
 Профиль |  | #3
       
Добавлено:  14.09.10 13:37
       
    
       
  
не могу написать точно код. Может напишут те, кто работает с MySQL. Я работаю с ORACLE, FIREBIRD...
 
    
Но судя по всему надо юзать DATASET, в который возвращаются записи. В данном случае вернется одна запись.
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа:
 Artyom
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Разработчик
Вопросов: 130
Ответов: 6602
      
 Профиль |  | #4
       
Добавлено:  14.09.10 14:51
       
    
       
  
 
    
Вернет по-моему object, тебе нужно будет привести к числу и все.
		
	  
			 
	
		 
    
       
    
Номер ответа: 5 
      
Автор ответа:
 qtronix
![]()
![]()
![]()
![]()
![]()
![]()
Вопросов: 4
Ответов: 5
      
 Web-сайт:  
 Профиль |  | #5
      
Добавлено:  15.09.10 13:36
       
    
       
  
вобщем то разобрался  
    
если комуто поможет 
вот что у меня получилось
		
	  
			 
	
		 
    
       
    
Номер ответа: 6 
      
Автор ответа:
 Artyom
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Разработчик
Вопросов: 130
Ответов: 6602
      
 Профиль |  | #6
       
Добавлено:  15.09.10 13:56
       
    
       
  
Мда, а ExecuteScalar все же чем не угодил?
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 7 
      
Автор ответа:
 Сергей
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 558230345 
Вопросов: 7
Ответов: 91
      
 Профиль |  | #7
       
Добавлено:  15.09.10 14:27
       
    
       
  
Здесь, чтобы упростить, вместо
 
    
можно просто написать 
так как строка в ответе придет одна.
		
	  
			 
	
		 
    
       
    
Номер ответа: 8 
      
Автор ответа:
 Artyom
![]()
![]()
![]()
![]()
![]()
![]()
![]()
Разработчик
Вопросов: 130
Ответов: 6602
      
 Профиль |  | #8
       
Добавлено:  15.09.10 17:16
       
    
       
  
 
    
Мда, а ExecuteScalar все же чем не угодил?  
		
	  
			 
	
		 
    
       
    
Номер ответа: 9 
      
Автор ответа:
 Сергей
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
![]()
ICQ: 558230345 
Вопросов: 7
Ответов: 91
      
 Профиль |  | #9
       
Добавлено:  16.09.10 09:48
       
    
       
  
лично я просто ни разу не использовал ExecuteScalar. Наверное это тоже хорошо!!!!
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 10 
      
Автор ответа:
 Дмитрий Юпатов
![]()
![]()
![]()
![]()
![]()
Вопросов: 4
Ответов: 457
      
 Web-сайт:  
 Профиль |  | #10
      
Добавлено:  16.09.10 10:23
       
    
       
  
ExecuteReader используется там, где результатом запроса ожидается табличные данные, а ExecuteScalar удобно использовать там, где результат запроса - единственное значение. Как раз твой случай. И не надо вот этого громадья: