景初

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

1.查询数据

查询数据,即浏览数据库中的数据,可以使用SELECT语句。SELECT语句是数据库操作中最常用的语句,因为数据库大部分时间提供的是数据读取服务。SELECT语句的语法如下:

SECECT column_1,column_2,...,column_n FROM table_name [WHERE clause];

该语句查询表table_name中某些字段的值组成的一条或多条记录,其中WHERE子句是可选的,它表示按某种条件查询表中特定的记录。

SELECT * FROM users;

这个示例SQL语句中,使用星号*表示表中所有的字段,如果只想查找表中的某些列,可以用如下的SQL语句

SECECT name,created_time FROM users;

这个示例SQL语句中,只查找了表users中所有记录的name和created_time的值。MySQL支持为列取别名,其用法如下:

SELECT column AS new_col_name FROM table_name;

上述用法表示,使用关键字AS将表table_name中的字段column重新命名为new_col_name,如

SELECT name,created_time AS ct FROM users;

这句SQL语句将表users中的字段created_time取别名为ct。

2.条件查询

在实际中,通常不需要查找表中的所有记录,而只需查找满足某些条件的特定记录。在SQL中,可以再SELECT语句中使用WHERE子句指定查询条件,从表中查找出特定的行。如:

SELECT * FROM users WHERE name='Mary';

因为WHERE子句中的列通常是用来搜索的字段,因此,一般会为这样的字段建立索引。WHER E子句可能会匹配到多行数据结果,如下所示的SQL语句,就可以查询出多行满足WHERE条件的记录,

SELECT * FROM users WHERE created_time > '2011-03-25 00:00:00';

这句SQL语句在表users中查找那些注册时间在2011年3月25日8点以后的用户信息,一共有两行记录匹配,MySQL会将其全部列出。

WHERE子句中可以同时出现多个查询条件,这些查询条件之间使用逻辑运算符AND或OR连接。使用AND连接的查询条件全部满足时,WHERE子句才会匹配相关记录。使用OR连接的查询条件,只要有其中之一满足,WHERE子句就会匹配相关记录。如:

SELECT * FROM users WHERE name='Mary' AND created_time > '2011-03-25 00:00:00';
SELECT * FROM users WHERE name='Mary' OR created_time> '2011-03-27 00:00:00';

3.更新数据

数据更新是指对数据库中的某些记录做修改,更改记录字段的值。在MySQL中使用UPDATE语句完成对表中数据的修改,UPDATE语句的用法如下所示。

UPDATE table_name SET column_1=value_1,column_2=value_2,...,column_n=value_n [WHERE clause];

table_name 是指要做更新操作的表名,在UPDATE语句中,使用SET子句指定要更新的字段及其值。UPDATE语句中,可以使用WHERE子句中的限定条件,来指定要修改的记录,如果没有使用WHERE子句,那么MySQL将修改表中所有的记录,下面是使用UPDATE更新表users的SQL语句示例。

UPDATE users SET name='Lily Cameron' WHERE id=3;
4.删除数据

使用DELETE语句删除表中的数据,其用法如下所示

DELETE FROM talbe_name [WHERE clause];
这句SQL表示从表table_name 中删除数据,WHERE子句表示删除满足限定条件的记录,WHERE语句时可选的。

删除数据是比较简单的操作,但同时是非常危险的操作。在MySQL的DELETE语句中,如果没有使用WHERE子句,那么表中的数据会在没有任何提示确认的情况下全部被删除!因此这个操作是相当外危险的,尤其是在使用root用户登录MySQL并且表的数据没有备份的情况下,所以删除操作一定要谨慎执行。

==避免表中数据全部被删除的一个有效的办法是,在写DELETE语句时,先写WHERE子句,最后写DELETE部分。==

如:

DELETE FROM users WHERE name='Lily Cameron'


版权声明:本文为博主原创文章,未经博主允许不得转载。

posted on 2014-04-28 09:18  景初  阅读(137)  评论(0编辑  收藏  举报