• 软件测试技术
  • 软件测试博客
  • 软件测试视频
  • 开源软件测试技术
  • 软件测试论坛
  • 软件测试沙龙
  • 软件测试资料下载
  • 软件测试杂志
  • 软件测试人才招聘
    暂时没有公告

字号: 小 中 大 | 推荐给好友 上一篇 | 下一篇

从一个MySQL的例子来学习查询语句

发布: 2007-7-04 17:55 | 作者: admin | 来源:  网友评论 | 查看: 14次 | 进入软件测试论坛讨论

领测软件测试网

自上学这么多年以来,得出了从一个例子入手来学习是最快最有效,并能培养出很强的实践能力,这是一种很好的学习方法。不访试试。比如看一本书的时候从各章节的例子入手,找出不了解的以及不懂的还是新知识,

进而有针对性的学习。看看下面的例子:






<?php $ip = getenv("REMOTE_ADDR"); //echo "$ip"; $conn=mysql_connect('ip','root','****'); mysql_select_db('db',$conn); $sql="select *from counter where ip="$ip";"; $result=mysql_query($sql,$conn); $num=mysql_num_rows($result); $count=mysql_query("select*from counter",$conn); $count=mysql_num_rows($count); //echo "$num"; //echo "$count"; if($num==0) { $sum=1; $count++; $sql="insert into counter(ip,sum,countdata)values('$ip','1','$count')"; mysql_query($sql,$conn); mysql_close($conn); //echo "$count"; } else { $my="select sum from counter where ip='$ip'"; $bbbbbb=mysql_query($my) or die(mysql_error()); $row=mysql_fetch_Array($bbbbbb); @$sum=$row[sum]; //echo "$sum"; $sum++; $sql="update counter set sum='$sum' where ip='$ip'"; mysql_query($sql); mysql_close($conn); } $str_count=strval($count); $str_count=Chop($str_count); $count_len=strlen($str_count); $image_count=""; if($count_len<6) {for($j=0;$j<6-$count_len;$j++) {$image_count=$image_count."<ccid_file values="0" src=0.gif />"; } } for($i=0;$i<$count_len;$i++) { $nom=substr($str_count,$i,1); $image_count = $image_count."<ccid_file values="; $image_count = $image_count" $image_count = $image_count.".gif />"; } echo"$image_count<br>"; print"这是你的第".$sum."次访问"; ?>

从上面的一个小小的计数器例子来看。已经包括了查询、插入、修改的知识。可以实现功能。记录每一个IP的访问量及总的访问次数。总量不支刷新

一、查询:

SELECT被用来检索从一个或多个表中精选的行。select_expression指出你想要检索的列。SELECT也可以用来检索不引用任何表的计算行

1、

select*from table1;

2、

select field1,field2 from table1;

3、

select count(*)from table2;

4、

select table1.filed1,table2.filed2 from table1,table2 where table1.field1='valed1';

5、

select *from table1 where field1='valed1' and fiels2='valed2' orded by field1;

6、

select*from table1 where filed1='valed1' order byfiled1 desc linit n;

7、

select *from table2 where name like '%$lin%';(模糊)

8、

sub_selects(高级) select *from table1 where id In(select id from table2......);

9、

select ...into table...(高级)

(可用select...into outfile...;insert...selkect...替代)

10、SELECT MAX(field1) AS field1 FROM table1 列的最大值

其中:表:table 字段:field

二、修改

"update table1 set field1='value1',field2=value2'where fiels3='values3";

UPDATE用新值更新现存表中行的列,SET子句指出哪个列要修改和他们应该被给定的值,WHERE子句,如果给出,指定哪个行应该被更新,否则所有行被更新。

三、插入:

1、

insert into table1 values('field1',field2',...);

INSERT ... VALUES形式的语句基于明确指定的值插入行.

2、

replace into tbl_name(1,2,3)values('1','2','3');

REPLACE功能与INSERT完全一样,除了如果在表中的一个老记录具有在一个唯一索引上的新记录有相同的值,在新记录被插入之前,老记录被删除。

四、删除:

$a="delet from table1 where field1='$value1' and field2='$value2'";

DELETE从tbl_name表中删除满足由where_definition给出的条件的行,并且返回删除记录的个数。如果你执行一个没有WHERE子句的DELETE,所有行都被删除。

文章来源于领测软件测试网 https://www.ltesting.net/


关于领测软件测试网 | 领测软件测试网合作伙伴 | 广告服务 | 投稿指南 | 联系我们 | 网站地图 | 友情链接
版权所有(C) 2003-2010 TestAge(领测软件测试网)|领测国际科技(北京)有限公司|软件测试工程师培训网 All Rights Reserved
北京市海淀区中关村南大街9号北京理工科技大厦1402室 京ICP备10010545号-5
技术支持和业务联系:[email protected] 电话:010-51297073

软件测试 | 领测国际 | ISTQB | ISTQB官网 | TMMi | TMMi认证 | 国际软件测试工程师认证 | 领测软件测试网