²»µ±±àдSQLÓï¾äµ¼ÖÂϵͳ²»°²È«
ÔÚÒ»°ãµÄ¶àÓû§Ó¦ÓÃϵͳÖУ¬Ö»ÓÐÓµÓÐÕýÈ·µÄÓû§ÃûºÍÃÜÂëµÄÓû§²ÅÄܽøÈë¸Ãϵͳ¡£ÎÒÃÇͨ³£ÐèÒª±àдÓû§µÇ¼´°¿ÚÀ´¿ØÖÆÓû§Ê¹ÓøÃϵͳ£¬ÕâÀïÒÔVisual Basic+ADOΪÀý£º ¡¡¡¡Ò»¡¢Â©¶´µÄ²úÉú ¡¡¡¡ÓÃÓڵǼµÄ±í ¡¡¡¡Users(name,pwd) ¡¡¡¡½¨Á¢Ò»¸ö´°ÌåFrmlogin£¬ÆäÉÏÓÐÁ½¸öÎı¾¿òText1£¬Text2ºÍÁ½¸öÃüÁî°´Å¥cmdok£¬cmdexit¡£Á½¸öÎı¾¿ò·Ö±ðÓÃÓÚÈÃÓû§ÊäÈëÓû§ÃûºÍÃÜÂ룬Á½¸öÃüÁî°´Å¥ÓÃÓÚ¡°µÇ¼¡±ºÍ¡°Í˳ö¡±¡£ ¡¡¡¡1¡¢¶¨ÒåAdo Connection¶ÔÏóºÍADO RecordSet¶ÔÏó£º ¡¡¡¡Option Explicit ¡¡¡¡Dim Adocon As ADODB.Connection ¡¡¡¡Dim Adors As ADODB.Recordset ¡¡¡¡2¡¢ÔÚForm_LoadÖнøÐÐÊý¾Ý¿âÁ¬½Ó£º ¡¡¡¡Set Adocon = New ADODB.Connection ¡¡¡¡Adocon.CursorLocation = adUseClient ¡¡¡¡adocon.Open "Provider=Microsoft.jet.OLeDB.4.0.1;Data Source=" && _ ¡¡¡¡App.Path && " est.mdb;" ¡¡¡¡cmdokÖеĴúÂë ¡¡¡¡Dim sqlstr As String ¡¡¡¡sqlstr = "select * from usersswheresname='" && Text1.Text && _ ¡¡¡¡"' and pwd='" && Text2.Text && "'" ¡¡¡¡Set adors = New ADODB.Recordset ¡¡¡¡Set Adors=Adocon.Execute(sqlstr) ¡¡¡¡If Adors.Recordcount>0 Then //»òIf Not Adors.EOF then ¡¡¡¡.... ¡¡¡¡MsgBox "Pass" //ͨ¹ýÑéÖ¤ ¡¡¡¡Else ¡¡¡¡... ¡¡¡¡MsgBox "Fail" //δͨ¹ýÑéÖ¤ ¡¡¡¡End if ¡¡¡¡ÔËÐиóÌÐò£¬¿´ÆðÀ´ÕâÑù×öûÓÐʲôÎÊÌ⣬µ«Êǵ±ÔÚText1ÖÐÊäÈëÈÎÒâ×Ö·û´®(Èç123)£¬ÔÚText2ÖÐÊäÈëa' or 'a'='aʱ£¬ÎÒÃÇÀ´¿´sqlstr´ËʱµÄÖµ£º ¡¡¡¡select * from usersswheresname='123' and pwd='a' or 'a'='a' ¡¡¡¡Ö´ÐÐÕâÑùÒ»¸öSQLÓï¾ä£¬ÓÉÓÚorÖ®ºóµÄ'a'='a'ΪÕæÖµ£¬Ö»Òªusers±íÖÐÓмǼ£¬ÔòËüµÄ·µ»ØµÄeofÖµÒ»¶¨ÎªFalse,ÕâÑù¾ÍÇáÒ×µØÈƹýÁËϵͳ¶ÔÓÚÓû§ºÍÃÜÂëµÄÑéÖ¤¡£ ¡¡¡¡ÕâÑùµÄÎÊÌ⽫»á³öÏÖÔÚËùÓÐʹÓÃselect * from usersswheresname='" && name && "' and pwd='" && password &&"'µÄ¸÷ÖÖϵͳÖУ¬ÎÞÂÛÄãÊÇʹÓÃÄÇÖÖ±à³ÌÓïÑÔ¡£ ¡¡¡¡¶þ¡¢Â©¶´µÄÌص㠡¡¡¡ÔÚÍøÂçÉÏ£¬ÒÔÉÏÎÊÌâÓÈÆäÃ÷ÏÔ£¬±ÊÕßÔÚÐí¶àÍøÕ¾Öж¼·¢ÏÖÄÜʹÓÃÕâÖÖ·½Ê½½øÈëÐèÒª½øÐÐÓû§ÃûºÍÃÜÂëÑéÖ¤µÄϵͳ¡£ÕâÑùµÄÒ»¸öSQL©¶´¾ßÓÐÈçϵÄÌص㣺 ¡¡¡¡1¡¢Óë±à³ÌÓïÑÔ»ò¼¼ÊõÎÞ¹Ø ¡¡¡¡ÎÞÂÛÊÇʹÓÃVB¡¢Delphi»¹ÊÇASP¡¢JSP¡£ ¡¡¡¡2¡¢Òþ±ÎÐÔ ¡¡¡¡ÏÖÓеÄϵͳÖÐÓÐÏ൱һ²¿·Ö´æÔÚ×ÅÕâ¸ö©¶´£¬¶øÇÒ²»Ò×¾õ²ì¡£ ¡¡¡¡3¡¢Î£º¦ÐÔ ¡¡¡¡²»ÐèÒª½øÐÐÓû§Ãû»òÃÜÂëµÄ²Â²â¼´¿ÉÇáÒ×½øÈëϵͳ¡£ ¡¡¡¡Èý¡¢½â¾ö©¶´µÄ·½·¨ ¡¡¡¡1¡¢¿ØÖÆÃÜÂëÖв»ÄܳöÏÖ¿Õ¸ñ¡£ ¡¡¡¡2¡¢¶ÔÃÜÂë²ÉÓüÓÃÜ·½Ê½¡£ ¡¡¡¡ÕâÀïÒªÌá¼°Ò»µã£¬¼ÓÃܲ»ÄܲÉÓùýÓÚ¼òµ¥µÄËã·¨£¬ÒòΪ¹ýÓÚ¼òµ¥µÄËã·¨»áÈÃÈËÄܹ»¹¹Ôì³öÐÎÈça' or 'a'='aµÄÃÜÎÄ£¬´Ó¶ø½øÈëϵͳ¡£ ¡¡¡¡3¡¢½«Óû§ÑéÖ¤ºÍÃÜÂëÑéÖ¤·Ö¿ªÀ´×ö£¬ÏȽøÐÐÓû§ÑéÖ¤£¬Èç¹ûÓû§´æÔÚ£¬ÔÙ½øÐÐÃÜÂëÑéÖ¤£¬ÕâÑùÒ»À´Ò²Äܽâ¾öÎÊÌâ¡£
--------------------------------------------------------------------------------
Ïà¹ØÎÄÕÂ
ÈçºÎÄÜͨ¹ý´°Ìå·ÃÎÊ±í£¬µ«²»ÄÜÖ±½Ó¶ÁÈ¡±í£¿ 2004-8-27 21:58:17
Êý¾Ý¿âÉè¼ÆÖеÄÃô½Ý·½·¨ 2004-2-9 11:19:16
µ÷ÓÃoutlookÉú³É²¢·¢ËÍÓʼþµÄ´úÂë 2004-1-30 10:32:07
ʲôÊÇ API£¿ 2004-1-28 15:01:53
SQL SERVER»ù±¾¸ÅÄîѧϰӡÏó 2004-1-1 21:23:13
Ò»×éSQL ServerÉí·ÝÑéÖ¤¹ÜÀí×Ó³ÌÐò 2003-12-31 16:29:54
ERwin--¼ò»¯µÄÊý¾Ý¿âÉè¼Æ¹¤¾ß 2003-12-15 12:41:40
Á˽â Microsoft Access °²È«ÐÔ 2003-11-13 11:21:08
±£»¤Access 2000Êý¾Ý¿âµÄ°²È« 2003-11-13 11:16:12
·ÀÖ¹Access 2000ÃÜÂë±»ÆÆÒëµÄ·½·¨ 2003-11-13 11:14:21
Access 2000Êý¾Ý¿âµÄÃÜÂëÍüÁËÔõô°ì 2003-11-13 11:05:39
ACCESSµÄÊý¾Ý¿â°²È«ÎÊÌâ½â´ð 2003-11-13 10:52:11
´æ´¢¹ý³ÌÈëÃÅ 2003-10-17 19:06:48
MS Jet SQL for Access 2000Öм¶Æª (I) 2003-10-17 18:47:38
½« Microsoft Access ÓÃ×÷ Automation ·þÎñÆ÷ 2003-10-14 8:37:19
ACCESSÊý¾Ý·ÃÎÊÒ³ÅäÖÃʵÀý 2003-10-14 8:36:00
ÈçºÎÕï¶Ï/ÐÞ¸´Ëð»µµÄ Jet 4.0 Êý¾Ý¿â 2003-10-14 8:31:26
Êý¾Ý¿âÉè¼Æ·¶Ê½ 2003-10-10 10:40:52
Óà Access 2000 ´ò¿ª Access 97 Êý¾Ý¿âʱ³öÏÖ¡°ÃÜÂëÎÞЧ¡±´íÎó 2003-10-6 16:13:52
|