(mysql)Foreign keyµÄʹÓÃ
(1)
Íâ¼üµÄʹÓÃ:
Íâ¼üµÄ×÷ÓÃ,Ö÷ÒªÓÐÁ½¸ö:
Ò»¸öÊÇÈÃÊý¾Ý¿â×Ô¼ºÍ¨¹ýÍâ¼üÀ´±£Ö¤Êý¾ÝµÄÍêÕûÐÔºÍÒ»ÖÂÐÔ.
Èç:
ÓбíA,±íBÖÐÒ»×Ö¶ÎÊDZíAijһ×ֶεÄÍâ¼ü.µ±É¾³ý±íA¼Ç¼ʱ,±íBÏàÓ¦¼Ç¼»á×÷ÏàÓ¦´¦Àí(ɾ³ý/»òÉèÖÃÍâ¼üÁÐΪNULL).µ«Èôɾ³ý±íB¼Ç¼,±íAµÄ¼Ç¼,Ôò²»»áÊÜÓ°Ïì!
Ò»¸ö¾ÍÊÇÄܹ»Ôö¼ÓERͼµÄ¿É¶ÁÐÔ
ÓÐЩÈËÈÏΪÍâ¼üµÄ½¨Á¢»á¸ø¿ª·¢Ê±²Ù×÷Êý¾Ý¿â´øÀ´ºÜ´óµÄÂé·³.ÒòΪÊý¾Ý¿âÓÐʱºò»áÓÉÓÚûÓÐͨ¹ýÍâ¼üµÄ¼ì²â¶øÊ¹µÃ¿ª·¢ÈËԱɾ³ý,²åÈë²Ù×÷ʧ°Ü.ËûÃǾõµÃÕâÑùºÜÂé·³
ÆäʵÕâÕýʽÍâ¼üÔÚÇ¿ÖÆÄã±£Ö¤Êý¾ÝµÄÍêÕûÐÔºÍÒ»ÖÂÐÔ.ÕâÊǺÃʶù.
ÀýÈ磺
ÓÐÒ»¸ö»ù´¡Êý¾Ý±í£¬ÓÃÀ´¼Ç¼ÉÌÆ·µÄËùÓÐÐÅÏ¢¡£ÆäËû±í¶¼±£´æÉÌÆ·ID¡£²éѯʱÐèÒªÁ¬±íÀ´²éѯÉÌÆ·µÄÃû³Æ¡£µ¥¾Ý1µÄÉÌÆ·±íÖÐÓÐÉÌÆ·ID×ֶΣ¬µ¥¾Ý2µÄÉÌÆ·±íÖÐÒ²ÓÐÉÌÆ·ID×ֶΡ£Èç¹û²»Ê¹ÓÃÍâ¼üµÄ»°£¬µ±µ¥¾Ý1,2¶¼Ê¹ÓÃÁËÉÌÆ·ID=3µÄÉÌÆ·Ê±£¬Èç¹ûɾ³ýÉÌÆ·±íÖÐID=3µÄ¶ÔÓ¦¼Ç¼ºó£¬Ôٲ鿴µ¥¾Ý1,2µÄʱºò¾Í»á²é²»µ½ÉÌÆ·µÄÃû³Æ¡£
µ±±íºÜÉÙµÄʱºò£¬ÓÐÈËÈÏΪ¿ÉÒÔÔÚ³ÌÐòʵÏÖµÄʱºòÀ´Í¨¹ýд½Å±¾À´±£Ö¤Êý¾ÝµÄÍêÕûÐÔºÍÒ»ÖÂÐÔ¡£Ò²¾ÍÊÇÔÚɾ³ýÉÌÆ·µÄ²Ù×÷µÄʱºòÈ¥¼ì²âµ¥¾Ý1,2ÖÐÊÇ·ñÒѾʹÓÃÁËÉÌÆ·IDΪ3µÄÉÌÆ·¡£µ«Êǵ±ÄãдÍê½Å±¾Ö®ºóϵͳÓÐÔö¼ÓÁËÒ»¸öµ¥¾Ý3 £¬ËûÒ²±£´æÉÌÆ·IDÕÒ¸ö×ֶΡ£Èç¹û²»ÓÃÍâ¼ü£¬Ä㻹ÊÇ»á³öÏֲ鲻µ½ÉÌÆ·Ãû³ÆµÄÇé¿ö¡£Äã×ܲ»ÄÜÿÔö¼ÓÒ»¸öʹÓÃÉÌÆ·IDµÄ×ֶεĵ¥¾Ýʱ¾Í»ØÈ¥ÐÞ¸ÄÄã¼ì²âÉÌÆ·ÊÇ·ñ±»Ê¹ÓõĽű¾°É
ͬʱ£¬ÒýÈëÍâ¼ü»áʹËٶȺÍÐÔÄÜϽµ¡£
(2)
Ìí¼ÓÍâ¼üµÄ¸ñʽ:
ALTER TABLE yourtablename
ADD [CONSTRAINT Íâ¼üÃû] FOREIGN KEY [id] (index_col_name, ...)
REFERENCES tbl_name (index_col_name, ...)
[ON DELETE {CASCADE | SET NULL | NO ACTION | RESTRICT}]
[ON UPDATE {CASCADE | SET NULL | NO ACTION | RESTRICT}]
˵Ã÷:
on delete/on update,ÓÃÓÚ¶¨Òådelete,update²Ù×÷.ÒÔÏÂÊÇupdate,delete²Ù×÷µÄ¸÷ÖÖÔ¼ÊøÀàÐÍ:
CASCADE:
Íâ¼ü±íÖÐÍâ¼ü×Ö¶ÎÖµ»á±»¸üÐÂ,»òËùÔÚµÄÁлᱻɾ³ý.
RESTRICT:
RESTRICTÒ²Ï൱ÓÚno action,¼´²»½øÐÐÈκβÙ×÷.¼´,¾Ü¾ø¸¸±íupdateÍâ¼ü¹ØÁªÁÐ,delete¼Ç¼.
set null:
±»¸¸ÃæµÄÍâ¼ü¹ØÁª×ֶα»update ,deleteʱ,×Ó±íµÄÍâ¼üÁб»ÉèÖÃΪnull.
¶ø¶ÔÓÚinsert,×Ó±íµÄÍâ¼üÁÐÊäÈëµÄÖµ,Ö»ÄÜÊǸ¸±íÍâ¼ü¹ØÁªÁÐÒÑÓеÄÖµ.·
Ïà¹ØÎĵµ£º
1 ÄÚ´æ±íµÄ±í»ú¹¹»¹ÊÇÔÚÊý¾Ý¿âÖеģ¬Ö»ÊÇÊý¾Ýʱ·ÅÔÚÄÚ´æÖеġ£
2 ÄÚ´æ±íÖв»¿ÉÒÔʹÓÃTEXTºÍBLOBÀàÐ͵Ä×ֶΡ£
3 ÄÚ´æ±í¿ÉÒÔͨ¹ýmax_heap_table_size = 2048MÀ´¼Ó´óʹÓõÄÄÚ´æ¡£
1 ÁÙʱ±íµÄ±í»ú¹¹ºÍÊý¾Ý¶¼ÊÇ·ÅÔÚÄÚ´æÖеÄ
¾ßÌå¼ûÏ£º
ÄÚ´æ±íʹÓùþϣɢÁÐË÷Òý°ÑÊý¾Ý±£´æÔÚÄÚ´æÖУ¬Òò´Ë¾ßÓм«¿ìµÄËÙ¶È£¬Êʺϻº´æÖÐСÐÍÊý¾Ý¿ ......
¼ÙÉèÎÒÃÇʹÓÃmysql_real_queryÖ´ÐÐÁËÒ»ÌõsqlÓï¾äÖ®ºó£¬·µ»ØÖµÎª·Ç0Öµ£¬´ó¼Ò¶¼ÖªµÀÕâÊÇÕâÌõÓï¾äÖ´Ðгö´í£¬µ«ÊÇÎÒÃÇÏë
ÁË½âµØ¸üÏêϸµãµÄ»°£¬¾¿¾¹ÊÇʲôÔÒòµ¼ÖÂÁËÕâ¸ö´íÎóÄØ£¿Õâʱºò¾ÍµÃÓÃÉÏmysqlÌṩµÄÁíÍâÒ»¸öAPI£ºmysql_errno¡£
mysql_errno»áÌṩ×î½üÒ»´Îµ÷ÓõÄC API³ö´íµÄÐÅÏ¢£¨²»¼ûµÃÿ¸öAPI¶¼»á¶ÔÕâ¸öerrno½øÐÐÉèÖ ......
Windows:
1. ÓÃϵͳ¹ÜÀíÔ±µÇ½ϵͳ¡£
2. Í£Ö¹MySQLµÄ·þÎñ¡£
3. ½øÈëÃüÁî´°¿Ú(cmd)£¬È»ºó½øÈëMySQLµÄ°²×°Ä¿Â¼£¬±ÈÈçÎҵݲװĿ¼ÊÇc:\mysql,½øÈëC:\mysql\bin
4. Ìø¹ýȨÏÞ¼ì²éÆô¶¯MySQL£¬
c:\mysql\bin>mysqld-nt --skip-grant-tables
5. ÖØÐ´ò¿ªÒ»¸öcmd´°¿Ú£¬½øÈëc:\mysql\b ......
MySQLÖØÐ°²×°µÄʱºò³öÏÖÁËÎÊÌ⣺Could not start the service MySQL. Error:0,ÔÒòÊÇûÓжԾɵÄMySQLÍêÈ«Ð¶ÔØµô¡£
ÔÚÄã´ÓµçÄÔÀïÐ¶ÔØ¾ÉµÄMYSQLÊý¾Ý¿â·þÎñʱ£¬Ê×ÏÈÏÈÔÚWINDOWS·þÎñÀïÍ£µôMYSQLµÄ·þÎñ¡£ÔÙµ½¿ØÖÆÃæ°åÀïµÄÔö¼Óɾ³ý³ÌÐòÄÚ½øÐÐɾ³ý£¬È»ºóÊÖ¶¯É¾³ýÔ°²×°Îļþ,µ«ÊÇÄã²¢²»ÄÜÍêÕûµÄ°ÑMYSQL·þÎñɾ ......
php£«mysqlÔúʵ¸öÈË»ù±¾¹¦
Ò». 10¾ä»°
1.²»ÒªÒÀÀµregister_global=ONµÄ»·¾³£¬´ÓÄã¸Õ¶®µÃÅäÖÃphpÔËÐл·¾³ÉõÖÁÉв»Ã÷°×register_globalµÄON/OFF»á¶Ô×Ô¼ºÓÐʲôӰÏìµÄÄÇÌìÆð£¬¾ÍÓ¦¸ÃÓ¸ҵذÑËüÉèΪOFF.
2.д³ÌÐòǰ¿´¿´ÔõôÓÃerror_reporting.
3.²»¶®¾ÍÎʱ¾Éíû´í£¬µ«ÄãÐèÒªÔÚÄÇ֮ǰ²é²éÊֲᡣ
4.µ±È»£¬ÄãÐèÒª¶®µÃʹÓÃÊÖ ......