php读取数据库信息的几种方法

php读取数据库信息的几种方法,第1张

连接到一个 url 地址为localhost 、 端口为 3306 的mysql服务器上。mysql服务器的帐号是"root",密码是"9999"。mysql 服务器上有一个数据库 ok , 数据库里有一个表 abc。表 abc 一共为两列,列名分别是 "id" 和 "name" ,将 abc 里的所有数据读出来。

<? 

$dbh = @mysql_connect("localhost:3306","root","9999") 

/* 定义变量dbh , mysql_connect()函数的意思是连接mysql数据库, "@"的意思是屏蔽报错 */ 

if(!$dbh){die("error")} 

/* die()函数的意思是将括号里的字串送到浏览器并中断PHP程式 (Script)。括号里的参数为欲送出的字串。 */ 

@mysql_select_db("ok", $dbh) 

/* 选择mysql服务器里的一个数据库,这里选的数据库名为 ok */ 

$q = "SELECT * FROM abc" 

/* 定义变量q, "SELECT * FROM abc"是一个SQL语句,意思是读取表abc中的数据 */ 

?> 

<br /> 

<!--========= 方法一 =========--> 

<br /> 

<? 

$rs = mysql_query($q, $dbh) 

/* 定义变量 rs ,函数mysql_query()的意思是:送出 query 字串供 MySQL 做相关的处理或者执行.由于php是从右往左执行的,所以,rs的值是服务器运行mysql_query()函数后返回的值 */ 

if(!$rs){die("Valid result!")} 

echo "<table>" 

echo "<tr><td>ID</td><td>Name</td></tr>" 

while($row = mysql_fetch_row($rs)) echo "<tr><td>$row[0]</td><td>$row[1]</td></tr>" 

/* 定义量变(数组)row,并利用while循环,把数据一一写出来.  

函数mysql_fetch_row()的意思是:将查询结果$rs单列拆到阵列变数中.  

$row[0] 和 $row[1] 的位置可以换*/ 

echo "</table>" 

?> 

<br /> 

<!--========= 方法二 =========--> 

<br /> 

<? 

$rs = mysql_query($q, $dbh) 

while($row = mysql_fetch_object($rs)) echo "$row->id $row->name <br />" 

/* id和name可以换位置 */ 

?> 

<br /> 

<!--========= 方法三 =========--> 

<br /> 

<? 

$rs = mysql_query($q, $dbh) 

while($row = mysql_fetch_array($rs)) echo "$row[id] $row[name] <br />" 

/* id和name可以换位置 */ 

?> 

<!--========= 方法三最快 =========--> 

<? 

@mysql_close($dbh) 

/* 关闭到mysql数据库的连接 */ 

?>

select curDate()#获取当前日期select curTime()#获取当前时间select now()#获取当前日期+时间

列举1个天数加减的例子,其他的看英文意思就可以理解了

select date_add(now(), interval 1 day) #当前日期天数+1

select date_add(now(), interval -1 day) #当前日期天数-1

select date_add(now(), interval 1 hour)

select date_add(now(), interval 1 minute)

select date_add(now(), interval 1 second)

select date_add(now(), interval 1 microsecond)

select date_add(now(), interval 1 week)

select date_add(now(), interval 1 month)

select date_add(now(), interval 1 quarter)

select date_add(now(), interval 1 year)

这里是一个使用日期函数的例子。下面的查询选择了所有记录,其date_col的值是在最后30天以内:

mysql>SELECT something FROM table

WHERE TO_DAYS(NOW()) - TO_DAYS(date_col) <= 30

DAYOFWEEK(date)

返回日期date的星期索引(1=星期天,2=星期一, ……7=星期六)。这些索引值对应于ODBC标准。

mysql>select DAYOFWEEK('1998-02-03')

->3

WEEKDAY(date)

返回date的星期索引(0=星期一,1=星期二, ……6= 星期天)。

mysql>select WEEKDAY('1997-10-04 22:23:00')

->5

mysql>select WEEKDAY('1997-11-05')

->2

DAYOFMONTH(date)

返回date的月份中日期,在1到31范围内。

mysql>select DAYOFMONTH('1998-02-03')

->3

DAYOFYEAR(date)

返回date在一年中的日数, 在1到366范围内。

mysql>select DAYOFYEAR('1998-02-03')

->34

MONTH(date)

返回date的月份,范围1到12。

mysql>select MONTH('1998-02-03')

->2

DAYNAME(date)

返回date的星期名字。

mysql>select DAYNAME("1998-02-05")

->'Thursday'

MONTHNAME(date)

返回date的月份名字。

mysql>select MONTHNAME("1998-02-05")

->'February'

QUARTER(date)

返回date一年中的季度,范围1到4。

mysql>select QUARTER('98-04-01')

->2

WEEK(date)

WEEK(date,first)

对于星期天是一周的第一天的地方,有一个单个参数,返回date的周数,范围在0到52。2个参数形式WEEK()允许

指定星期是否开始于星期天或星期一。如果第二个参数是0,星期从星期天开始,如果第二个参数是1,

从星期一开始。

mysql>select WEEK('1998-02-20')

->7

mysql>select WEEK('1998-02-20',0)

->7

mysql>select WEEK('1998-02-20',1)

->8

YEAR(date)

返回date的年份,范围在1000到9999。

mysql>select YEAR('98-02-03')

->1998

HOUR(time)

返回time的小时,范围是0到23。

mysql>select HOUR('10:05:03')

->10

MINUTE(time)

返回time的分钟,范围是0到59。

mysql>select MINUTE('98-02-03 10:05:03')

->5

SECOND(time)

回来time的秒数,范围是0到59。

mysql>select SECOND('10:05:03')

->3

PERIOD_ADD(P,N)

增加N个月到阶段P(以格式YYMM或YYYYMM)。以格式YYYYMM返回值。注意阶段参数P不是日期值。

mysql>select PERIOD_ADD(9801,2)

->199803

PERIOD_DIFF(P1,P2)

返回在时期P1和P2之间月数,P1和P2应该以格式YYMM或YYYYMM。注意,时期参数P1和P2不是日期值。

mysql>select PERIOD_DIFF(9802,199703)

->11

DATE_ADD(date,INTERVAL expr type)

DATE_SUB(date,INTERVAL expr type)

ADDDATE(date,INTERVAL expr type)

SUBDATE(date,INTERVAL expr type)

这些功能执行日期运算。对于MySQL 3.22,他们是新的。ADDDATE()和SUBDATE()是DATE_ADD()和DATE_SUB()的同义词。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zaji/7618610.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-07
下一篇 2023-04-07

发表评论

登录后才能评论

评论列表(0条)

保存