马永占,myz,mayongzhan

相当稳定的进步,欢迎回贴交流

用户操作
[即时聊天] [发私信] [加为好友]
myzID:mayongzhan
69969次访问,排名1474好友1人,关注者18
php,apache,mysql,linux,html,css,javascript
mayongzhan的文章
原创 154 篇
翻译 0 篇
转载 0 篇
评论 91 篇
myz的公告

XML聚合
feedsky
最近评论
q32r:ok
waterFLY:所有的东西都有tostring(),是因为所有的类都继承自object,object有 toString();
790500:马永占,你好,请加我QQ790500,我想做个小软件,是关于登陆论坛的
joe:Zend_Acl 每个人理解不同,我开始用zf做项目,权限也是自己写,后来全部重写为Zend_Acl,因为个人觉得Zend_Acl和Zend_Auth结合用不错

Zend_Filter 虽然我写的model底层类的那些基本的过滤都是直接用php函数,毕竟速度快,也方便,但这个只是基础,很多时候不同表单牵涉不同的过滤,例如ip地址过滤等等,那么就需要自己写filter了,……
nginxlee:很好,很强大!
文章分类
收藏
    相册
    存档
    订阅我的博客
    XML聚合  FeedSky

    原创 mysql高级 triggers,stored procedure,view,index,transaction,lock.收藏

    新一篇: 自建英语广播 | 旧一篇: php实现-xml+xsl=html

    版权声明:原创作品,允许转载,转载时请务必以超链接形式标明文章原始出版、作者信息和本声明。否则将追究法律责任。http://blog.csdn.net/mayongzhan - 马永占,myz,mayongzhan 

    triggers,stored procedure,index,view,transaction,lock
    有很大部分是根据手册写的,之所以php和mysql的书如此之少,关键是手册写的太好了…哎.只做最简单的介绍.需要详细的话,看手册,就把这文章当做要学的列表吧 : )---myz
     
    触发—TRIGGERS
    这个我的理解就是外键级联删除的升级.前些天有个东西需要做外键级联添加…这个就需要triggers了.
    创建
    CREATE TABLE testTable(id INT);
    CREATE TRIGGER 触发器名 BEFORE INSERT ON testTable
    INSERT INTO testTable2 SET name=NEW.id
    这里粗略讲一下.BEFORE是规定在INSERT ON testTable 之前执行还是之后执行
    INSERT ON testTable就是testTable的插入事件,当然还有update和delete
    后面的就是触发器要执行的程序,可以些多条语句.用BEGIN…END括起来.
     
    存储程序—STORED PROCEDURE
    这个分为procedure 和function,其实就是功能上的差异,前者简单些.
    都有create drop alter语法.还有show 的语法.
    delimiter //
    CREATE PROCEDURE newProc (OUT param1 INT)
    BEGIN
    SELECT COUNT(*) INTO param1 FROM t;
    END
    //
    delimiter ;
    CALL newProc(@test)
    SELECT @test;
    再加上触发器,完美…………
     
    索引—INDEX
    适当的建立索引,多了影响速度,少了也会影响速度.
    在列d和a上添加索引
    ALTER TABLE t2 ADD INDEX (d), ADD INDEX (a);
    在表t中删除d列的索引
    ALTER TABLE t DROP INDEX d
    FULLTEXT索引
    FULLTEXT索引只能对CHAR, VARCHAR和TEXT列提供索引,并且只能在MyISAM表中,这个用在搜索文章内容的时候很有用.
     
    视图—VIEW
    创建,修改,删除基本上和表的相同
    CREATE VIEW v AS SELECT id, name, height,width,height*width AS area FROM t
     
    事务—TRANSACTION (InnoDB中使用)
    提交
    START TRANSACTION
    SELECT * FROM t;
    INSERT INTO t SELECT * FROM t;
    INSERT INTO t2 SELECT * FROM t2;
    COMMIT
    撤消
    START TRANSACTION
    ROLLBACK
     
    —LOCK
    LOCK TABLES和UNLOCK TABLES
    读锁
    LOCK TABLES t READ;
    SELECT * FROM t;
    ---ERROR 1100: Table 't' was not locked with LOCK TABLES
    写锁
    LOCK TABLES t WRITE;
    INSERT INTO t SELECT * FROM t;
    ---ERROR 1100: Table 't' was not locked with LOCK TABLES
    解锁
    LOCK TABLES t WRITE;
    SELECT * FROM t;
    UNLOCK TABLES;

    发表于 @ 2007年09月24日 09:14:00|评论(loading...)|

    新一篇: 自建英语广播 | 旧一篇: php实现-xml+xsl=html

    评论:没有评论。

    发表评论  


    登录
    Csdn Blog version 3.1a
    Copyright © myz