MySQLѧϰ(3) ÊÓͼ£¬Óα꣬Óï¾ä¿é¶ù
1.MySQL´´½¨ÊÓͼµÄ¼òµ¥Óï¾äΪ£ºCREATE VIEW view_name AS SELECT * from TABLE_NAME;
²»ÄܶԴ¥·¢Æ÷´´½¨ÊÓͼ(VIEW)¡£µ«ÊÇÔÚ5.1.4ÖÐÊÇÕâÑùÃèÊöµÄ£¬A view can be created from many kinds of SELECT statements. It can refer to base tables or other views. It can use joins, UNION, and subqueries¡£´óÖÂÒâ˼ÊÇÊÓͼ¿ÉÒÔÓÉ´ó¶àÊýSELECTÓï¾ä×é³É£¬¿ÉÒÔÊDzο¼»ù´¡±í»òÆäËûµÄÊÓͼ¡£ÄÜʹÓÃÁ¬½Ó£¬ºÏ²¢ºÍ×Ó²éѯ¡£
2.Óαê(CURSOR)£¬ÓαêÔÚ´æ´¢¹ý³ÌÖеÄʹÓá£
ÓαêÊÇÒ»ÖÖÔÚÊý¾Ý¿â·þÎñÆ÷¶Ë²Ù×÷½á¹û¼¯µÄ·½Ê½£¬Èç¹ûûÓÐÓαêÎÒÃÇÒª¶Ô²éѯµÄ½á¹û¼¯½øÐд¦Àí¾ÍҪʹÓø߼¶ÓïÑÔ±à³ÌʵÏÖ£¬ÕâÑùÔö¼ÓÁ˲»±ØÒªµÄÍøÂç´«Êä¡£MySQLÔÚ5.0.3Ö§³ÖÁËÓαꡣ
ѧϰµÄ´úÂëÈçÏ£º
DELIMITER /
/**
*1.Ð޸ıíÁÐ
*1.1Ôö¼Ó±íÁÐ,1.2
*/
ALTER TABLE t ADD COLUMN ii INT;
ALTER TABLE t
/**
*2.MD5º¯Êý£¬ÏÖÔڵļÓÃܹ¤×÷¶¼½»¸øÊý¾Ý¿âÁË£¬²»ÓÃÔÚÓ¦ÓÃÖмÓÃÜÁË¡£
**/
SELECT MD5('LEST');
/**
*3.ÊÓͼVIEW£¬ÕâÑùÎÒÃÇÖ»Òª²éѯÊÓͼ¾Í¿ÉÒÔ¿´µ½ÎÒÃÇÒª²é¿´µÄÊý¾Ý£¬µ±È»Ç°ÌáÊÇÎÒÃǵÄSELECT Óï¾ä°üÀ¨ÁËËûÃÇ¡£
*/
CREATE OR REPLACE VIEW v_t AS SELECT i from t;
SELECT * from v_t;
DESC v_t;
CREATE PROCEDURE p_iu()
BEGIN
INSERT INTO userinfo VALUES('bill',30);
UPDATE userinfo SET age=20 WHERE username='admin1234';
COMMIT;
EXCEPTION
ROLLBACK;
END;
/**4.½«¸÷¸ö²Ù×÷ÏÞÖÆÔÚÒ»Æ𣬳ɹ¦µÄÌõ¼þÊÇÕû¸ö²Ù×÷˳ÀûÍê³É*/
BEGIN
INSERT INTO t VALUES(12,12);
INSERT INTO tx VALUES(11);
END;
/
/**
*5.ÓαêCURSOR£¬´æ´¢¹ý³ÌºÍº¯ÊýÖ§³Ö¼òµ¥µÄÓα꣬ʹÓÃÓαêÊÇÊý¾Ý¿â·þÎñÆ÷¿ÉÄܻὫ½á¹û±í¸´ÖÆÒ»·Ý£¬Ò²¿ÉÄܲ»»á,Ö»ÄÜÔÚ´æ´¢¹ý³ÌºÍº¯ÊýÖÐʹÓá£
*1.¼òµ¥µÄÓαêÓ¦Óã¬doneÊÇÓÖÓαêµÄʵÏÖÕß²Ù×÷£¬¶ÔÆäÖµ½øÐÐÐÞ¸Ä
**/
DROP TABLE IF EXISTS t;//
CREATE TABLE t(i_a INT);//
INSERT INTO t VALUES(2);//
CREATE PROCEDURE p_cur()
BEGIN
DECLARE done INT DEFAULT 0;
DECLARE a INT;
DECLARE cur1 CURSOR FOR SELECT * from t;
OPEN cur1;
REPEAT
FETCH cur1 INTO a;
UNTIL done END REPEAT;
CLOSE cur1;
END;
//
DELIMITER ¸ù¾ÝÐèÒª¸Ä±ä¡£
Ïà¹ØÎĵµ£º
¸´ÖƼǼ,²ÉÓÃ×Ô²éѯ·½Ê½
sql
INSERT INTO `table` ('id','aa','bb','cc') SELECT 'id','aa','bb','cc' from `table` (WHERE .....)
Tips:
/**
* ¸´ÖÆмͼµÄʱºò,¿ÉÄÜÒª¸üÐÂid»òÕßÊDz¿·ÖÊý¾Ý(¼ÙÉèid×ÔÔö¼ÓµÄÇé¿ö)
*
* text_aa Ϊ¹Ì¶¨Öµ ,¿ÉÔڽű¾µ÷ÓÃÖи³±äÁ¿Öµ Èç($aa)
* ×¢Òâ'text_aa' Óë `cc` µÄÇø±ð ......
Êý¾Ý¿âÉè¼Æ£º
--
-- Êý¾Ý¿â: `test`
--
-- --------------------------------------------------------
--
-- ±íµÄ½á¹¹ `menu`
--
CREATE TABLE IF NOT EXISTS `menu` (
`ID` int(10) unsigned NOT NULL auto_increment,
`PID` int(11) NOT NULL,
`TITLE` varchar(200) NOT NULL,
`REMARK` varchar(200) NOT ......
http://blog.163.com/mysqldba@126/blog/static/1315356342009931103834396/
×î½ü¿´ÁË¿´mysqlµÄ״̬±äÁ¿£¬¸Ð¾õºÃ¶à¸úÒÔÇ°×Ô¼ºÏëÏóµÄ²»Ò»Ñù¡£ÎªÁËÒÔºóÄܼ°Ê±·¢ÏÖ×Ô¼ºµÄ´íÎó,¾ÍÏȼÇÏÂÀ´;
http://dev.mysql.com/doc/refman/5.1/en/server-status-variables.html
mysql> show status;
Com_xxx
Óï¾ä¼ÆÊý±äÁ¿±íʾÿ¸öxxx ......
MySQLÎå¸ö²éѯÓÅ»¯·½·¨
ÊìϤSQLµÄÈ˶¼ÖªµÀ£¬Íê³Éͬһ¸öÈÎÎñ£¬SQL¿ÉÄÜÓжàÖÖд·¨£¬µ«²»Í¬Ð´·¨µÄ²éѯ
ÐÔÄÜ¿ÉÄÜ»áÓÐÌìÈÀÖ®±ð£¬±¾ÎÄÁоٳöÎå¸ö²éѯÓÅ»¯µÄ·½·¨
£¬µ±È»£¬ÓÅ»¯µÄ·½·¨»¹Óкܶࡣ¡¡¡¡
1¡¢ÓÅ»¯Êý¾ÝÀàÐÍ
MySQL
ÖÐÊý¾ÝÀàÐÍÓжàÖÖ£¬Èç¹ûÄãÊÇÒ»ÃûDBA£¬ÕýÔÚ°´ÕÕÓÅ»¯µÄÔÔò¶ÔÊý¾ÝÀàÐͽøÐÐÑϸñµÄ¼ì²é£¬µ«¿ª·¢
ÈËÔ ......