PHP入门进阶学习(4)mysql数据库连接及添加/修改/删除数据

要对数据库进行操作i(添加、取出、修改、删除记录)都必须首先做一件事,那就是连接主机,选择数据库,向数据库发出请求。否则一切都是纸上谈兵。下面介绍三个重要的MySQL语句,分别是:mysql_connect( )(连接主机),mysql_select_db( )(选择数据库),mysql_query()(向数据库发出请求)。

1.mysql_connect( )

它的作用是连接主机。

语法为:mysql_connect( “要登陆的主机”,”登陆时的用户名”,”密码”);

如mysql_connect( “localhost”,”root”,””);

其中的“localhost”、“root”都是本地机phpmyadmin默认下的主机名和用户名,并且密码为空。如果你使用空间服务商提供的空间,那你可以自己要求他给你你想要的用户名和密码了。

同功能的函数还有mysql_pconnect( )。语法是一样的,区别在于后者开启一个长期连接,且无法使用mysql_close()函数关闭,而前者使用完后要用mysql_close()及时的关闭。应该说开发B/S的话是用mysql_pconnect()好,一般网站的前台什么的是用mysql_connect()好。比方对付黑客来说,用mysql_pconnect更安全了,不用每次连接发送用户名和密码了。

这个函数成功连接后,会返回一个连接ID。因此,这个函数一般这样写:

$link= mysql_pconnect( );

说到这,补充一个函数mysql_close()

语法为:mysql_close(“要关闭的连接ID”);

比如:mysql_close($link);

注:所有( )内都为字符串,有$符号时就无须”” 了。

2.mysql_select_db( )

它的作用是选择一个数据库为当前数据库。以后的操作就都在这个数据库中进行了。这个函数如果执行成功,返回一个true,否则返回false。

语法为:mysql_select_db( “数据库名称”,”连接的ID”);

第二个参数可以省略,它会自动寻找并连接最后一个使用的连接ID。

在本程序中,这个语句我们写成:mysql_select_db( "biezhiyinan",$link);

3.mysql_query()

它的作用是向服务器发出一个提出请求的字符串。

语法为:mysql_query(“提出问题的字符串”,连接ID);

其中第一个参数是一个完整的MySQL语句,第二个参数可以省略,偶一般是把它省略的。

在使用这个函数前应该先用mysql_select_db( )指定要使用的数据库。

当提问的字符串是update、insert或delete时,函数返回的结果是true或false,表明查询是否成功,如果提问字符串是select语句则返回一个结果ID,如果select发生错误,则返回false。

了解了上面三个重要的函数后,我们就可以对数据库进行操作了。

二.向数据库发出请求语句基础知识

它们分别是:insert(向数据库插入数据)、delete(删除数据表中的数据)、select(检索数据)、update(更新数据)。

  • insert():向数据库插入数据

语法A:insert into 数据表名(字段1,字段2,……)values(“字段1的内容”,” 字段的2内容”……);

语法B:insert into 数据表名 set 字段1=”字段1的内容”, 字段2=”字段2的内容”,……;

对A中,字段名可以省略,但后面的values部分的内容必须要和phpmyadmin中定义的字段顺序一样。

下面请看例子:

A:insert into Article(title,date,author,source,content) values($title,$date,$author,$source,$content)

注:上面的“$……“代表了要添加字段的内容,定义时:$……=”内容”;

B:insert into Article set title=$title,author=$author

注:如果内容是数字,则”” 可以省略。

  • delete():删除数据表中的数据

语法:delete from 数据表名 where 指定地点 limit 数字

如果没有“where 指定地点”则表中所有数据都没了。“limit 数字”可以告诉服务器可以删除的最大行数。

    例子:delete from Article where id=$id limit 0,1;(表示只删除一个记录)

3. select(): 检索数据

语法:select 字段名1,字段2,…… from 数据表名 where 地点;

如果想列出所有记录中所有列的数据,可以使用“*“代表字段名。

例子:A:select id,author from Article where id=$id;

B:select * from Article where id=$id;

  • update():更新数据

语法和insert几乎是完全一样的。

如:update Article set author=$author,title=$title where id=$id;

值得注意的是,使用update语句时,要注意使用where字句,否则可能会导致大量的数据丢失。比如:

update Article set author=”biezhiyinan”

这个操作会使表中所有的作者都变成“biezhiyinan”了。

再举一个正面的例子,记录文章的表Article中,如果有一个字段为hits,用来存储文章的点击数,点击一次后,他的hits就增加1,可以使用以下的语句:

update article set hits=hits+1 where id=$id;




[本日志由 biezhiyinan 于 2007-11-15 10:59 AM 编辑]
文章来自: 本站原创
引用通告: 查看所有引用 | 我要引用此文章
Tags:
相关日志:
评论: 0 | 引用: 0 | 查看次数: -
发表评论
昵 称:
密 码: 游客发言不需要密码.
内 容:
验证码: 验证码
选 项:
虽然发表评论不用注册,但是为了保护您的发言权,建议您注册帐号.