当前位置:七道奇文章资讯数据防范MySQL防范
日期:2011-05-02 15:44:00  来源:本站整理

MySQL数据库技术(05)[MySQL防范]

赞助商链接



  本文“MySQL数据库技术(05)[MySQL防范]”是由七道奇为您精心收集,来源于网络转载,文章版权归文章作者所有,本站不对其观点以及内容做任何评价,请读者自行判断,以下是其具体内容:
1.4.9 删除或更新现有记录

? ? 有时,但愿除去某些记录或更改它们的内容.DELETE 和U P D ATE 语句令我们能做到这一点.
? ? DELETE 语句有以下格局:
? ? DELETE FROM t b l _ n a m e WHERE 要删除的记录
? ? WHERE 子句指定哪些记录应当删除.它是可选的,但是假如不选的话,将会删除全部的记录.这意味着最简单的DELETE 语句也是最危险的.
? ?DELETE FROM tb1_name
? ?这个查询将排除表中的全部内容.一定要当心!为了删除特定的记录,可用WHERE 子句来挑选所要删除的记录.这近似于SELECT 语
句中的WHERE 子句.比方,为了删除president 表中全部诞生在Ohio 的总统记录,可用下列查询:
MySQL数据库技术(05)
? ?DELETE 语句中的WHERE 子句的一个限制是只可以引用要删除记录的表中的列.在公布DELETE 语句从前,最好用SELECT 语句测试一下呼应的WHERE 子句以确保实际删除的记录就是确切想要删除的记录(并且只删除这些记录).假定想要删除Te d d yRoosevelt 的记录.下面的查询能完成这项工作吗?
MySQL数据库技术(05)
? ? 是的,感受上它能删除您头脑中打算删除的记录.但是,错了,实际上它也能删除Franklin Roosevelt 的记录.假如首先用WHERE 子句查抄一下就安全了,以下所示:
MySQL数据库技术(05)
? ? 目前我们懂得了能挑选出所需记录的WHERE 子句了,因此DELETE 查询可精确地构造以下:
MySQL数据库技术(05)
? ? 仿佛删除一个记录需求做很多工作,不是吗?但是安全第一!(假如想使键盘输入工作尽大概少,可操纵拷贝和粘贴技术或采取输入行编辑技术.更具体的信息,请参阅"与m y s q l交互的本领"一节.)为了改正现有记录,可操纵U P D ATE 语句,它具有下列格局:
U P D ATE t b l_n a m e SET 要更改的列WHERE 要更新的记录这里的WHERE 子句正如DELETE 语句一样,是可选的,因此假如不指定的话,表中的每个记录都被更新.下面的查询将每个学生的名字都更改成" G e o rg e":
MySQL数据库技术(05)
? ? 明显,关于这样的查询必须极其当心.普通对正在更新的记录要更为当心.假定近来增添了一个新记录到历史同盟,但是只填写了此实体的少数几个列:
MySQL数据库技术(05)
? ? 然后意识到忘了设置其会员终止日期.那么可以下举行设置:
MySQL数据库技术(05)
? ? 可同时更新多个列.下面的语句将更新Jerome 的电子邮件和通信地址:
MySQL数据库技术(05)
? ? 还可以通过设置某列的值为N U L L(假定此列答应NULL 值)"不设置"此列.假如在将来的某个时刻Jerome 决意支付成为毕生会员的会员资格更新费,那么可以设置其记录的终止日期为N U L L("永久")以标志他为毕生会员.具体设置以下:
MySQL数据库技术(05)
? ? 正如DELETE 语句一样,关于U P D AT E,用SELECT 语句测试WHERE 子句以确保挑选精确的更新记录是一个好办法.假如挑选条件范围太窄或太宽,就会使更新的记录太少或太多.假如您试验过本节中的查询,那么一定已经删除和改正了samp_db 表中的记录.在持续学习下一节的内容从前,应当撤消这些更改.按1 . 4 . 7节"增添新记录"最后的阐明重新装载表的内容来完成这项工作.
? ? 1.4.10 改变表的构造
? ? 回想我们成立历史同盟member 表时缺了一个会员号列,因此我们可以举行一次A LT E RTABLE 语句的操练.需求用A LTER TA B L E,可以对表重新命名,增添或删除列,更改列的范例等等.这里给出的例子是关于怎样增添新列的.有关A LTER TABLE 功效的具体内容,请参阅第3章.增添会员号列到member 表的主要考虑是,其值应当是唯一的,免得各会员条目混合.A U TO_INCREMENT 列在此是很有效的,因为我们可以在增添新的号码时令MySQL 自动地生成唯一的号码.在C R E ATE TABLE 语句中,这样一个列的阐明以下:
MySQL数据库技术(05)
? ? 关于A LTER TA B L E,呼应的句法也是近似的.可履行下列查询增添该列:
MySQL数据库技术(05)
? ? 我们已经有一个存放会员号的列,目前怎样分配会员号给member 表中的现有记录呢?很简单!MySQL 已经做了这项工作.在增添一列到某个表时, MySQL 将会用缺省值初始化该列值.关于A U TO_INCREMENT 列,每个行将会产生一个新的次序号.

  以上是“MySQL数据库技术(05)[MySQL防范]”的内容,如果你对以上该文章内容感兴趣,你可以看看七道奇为您推荐以下文章:
  • Windows 搭配 IIS7 PHP MySQL 环境
  • mysql Out of memory (Needed 16777224 bytes)的错误办理
  • mysql提醒[Warning] Invalid (old?) table or database name问题的办理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • mysql启用skip-name-resolve情势时呈现Warning的处理办法
  • MySQL Order By语法介绍
  • <b>MySQL ORDER BY 的实现解析</b>
  • mysql数据库插入速度和读取速度的调整记录
  • MySQL Order By索引优化办法
  • MySQL Order By用法分享
  • mysql #1062 –Duplicate entry ''1'' for key ''PRIMARY''
  • MySQL Order By Rand()效率解析
  • 本文地址: 与您的QQ/BBS好友分享!
    • 好的评价 如果您觉得此文章好,就请您
        0%(0)
    • 差的评价 如果您觉得此文章差,就请您
        0%(0)

    文章评论评论内容只代表网友观点,与本站立场无关!

       评论摘要(共 0 条,得分 0 分,平均 0 分) 查看完整评论
    Copyright © 2020-2022 www.xiamiku.com. All Rights Reserved .