PHP之操作数据库
数据库,顾名思义,是一个存放数据的容器。然后在使用过程中对数据库里面的数据增删改查,具体是怎么实现的呢?
这儿不得不提一下一个神奇的东西:SQL语句:结构化查询语言(Structured Query Language),对,就是它,对数据库里的数据进行操作,具体语句可以参考:http://www.cnblogs.com/yunf/archive/2011/04/12/2013448.html
第一步: 连接及确认连接
数据库里的数据既然可以增删改查,不可能每个人都可以来随意增删改查吧,而且那么多数据库服务器,我哪知道我要增删改查哪个服务器的哪个数据库的哪个表的那条记录?所以第一步就是去连接指定数据库,而且数据库是设了用户限定的,所以要连接数据库,肯定要向改数据库服务器提交正确的用户名和密码。
<?php
$link=mysql_connect("hostname","username","password")or die("数据库连接失败"); //指定服务器,username和password就是数据库的用户的用户名和密码如果连接不成功则显示:数据库连接失败
mysql_select_db("tablename",$link)or die("db连接失败"); //指定服务器里的数据库,连接失败则显示:db连接失败
mysql_query("set name 'utf8'",$link); //设置编码utf-8
?>
这是对数据库的连接,可以写到一个conn.php里,然后每一个对数据库增删改查的页面用一个include去调用。
第二步:增删改查
下面就是在PHP文件中对数据库的操作;
<?php
include('conn.php'); //调用conn.php连接数据库
$sql=" your SQL 语句 "; //构造SQL语句
$result=mysql_query($sql,$link); //执行SQL语句并取得返回值
.....
eg1:查询表
<?php
include("conn.php");
$sql="select * from user where username='admin'"; //构造语句用select语句查询user表中的username="admin"的记录
$result=mysql_query($sql,$link); //执行SQL语句
$rs=mysql_fetch_array($result); //把返回值放到一个叫$rs的数组里
print_r $rs; //打印整个数组(整条记录)
echo $rs['username']; //打印出改记录的标题为username的一栏 ?>
eg2:插入记录
<?php
include("conn.php");
$sql="insert into user (username,password) values ('admin','passwd')"; //在user表中添加一条username为admin,password为passwd的记录
$result=mysql_query($sql,$link);
if($result) //判断是否插入成功
{
echo "插入成功";
}else
{
echo "插入失败";
}
?>
eg3:修改记录
<?php
include("conn.php");
$sql="update user set password='password' where username='admin'"; //修改user表中username为admin的一条记录的password改为password
$result=mysql_query($sql,$link);
if($result) //判断是否修改成功
{
echo "修改成功";
}else
{
echo "修改失败";
}
?>
eg4:删除记录
<?php
include("conn.php");
$sql="delete * from user where username='admin'";
$result=mysql_query($sql,$link);
if($result)
{
echo "删除成功";
}else
{
echo "删除失败";
}
?>
做到这些,简单的对数据库的操作就没问题了。总体来说难点就是构造SQL语句,对于这点,建议大家在电脑上单独搭个MySQL环境,进入命令行模式去操作一下。
具体可以参考:http://www.cnblogs.com/lonelystarxing/archive/2011/01/30/1947964.html
PHP之操作数据库的更多相关文章
- Java-jdbc操作数据库
如果需要访问数据库,首先要加载数据库驱动,数据库驱动只需在第一次访问数据库时加载一次.然后在每次访问数据库时创建一个Connection实例,获取数据连接,这样就可以执行操作数据库的SQL语句.最后在 ...
- python高级之操作数据库
python高级之操作数据库 本节内容 pymysql介绍及安装 使用pymysql执行sql 获取新建数据自增ID fetch数据类型设置 1.pymysql介绍及安装 在python2中连接数据库 ...
- greenDao:操作数据库的开源框架
greenDAO: Android ORM for your SQLite database 1. greenDao库获取 英文标题借鉴的是greendrobot官网介绍greenDao时给出的Tit ...
- 总结一些关于操作数据库是sql语句还是存储过程问题
总结一些关于操作数据库是sql语句还是存储过程问题 程序中,你跟数据的交互,需要向数据库拿数据.更改数据库的数据等,这些操作,本身不是程序完成的,而是程序发命令给数据库去做的,不管是通过sql语句方式 ...
- greendao操作数据库的使用方法
第一步:把greendao-1.3.0-beta-1,greendao-generator-1.3.1两个jar包加载到工程的lib的文件夹中,一定要右键点击Add As Library后才能使用. ...
- pymysql 操作数据库
一.简介 pymsql是Python中操作MySQL的模块,其使用方法和MySQLdb几乎相同,但目前pymysql支持python3.x而后者不支持3.x版本 其执行语句与sql源码相似 二.使用 ...
- Asp.Net MVC 自定义的MVC框架(非EF操作数据库)
一些废话:在北京辞职回家不知不觉中已经半年多了,这半年中有过很多的彷徨,困惑,还有些小小难受.半年时间算是我人生以来遇到过的最困苦的时候.理想的工作跟我擦肩而过,驾照也没有考过,年后这一改革...,毕 ...
- 一次莽撞的行为:在phpmyadmin中修改MySQL root密码后无法操作数据库
一.手贱行为(✿◡‿◡) 在一次开发中通过xampp方式安装了PHP环境,需要操作数据库时通过phpmyadmin访问MySQL,在一次数据库操作时想起没有设置密码,于是直接在mysql数据库中的us ...
- python操作数据库
一,安装mysql 如果是windows 用户,mysql 的安装非常简单,直接下载安装文件,双击安装文件一步一步进行操作即可. Linux 下的安装可能会更加简单,除了下载安装包进行安装外,一般的l ...
- 十五、JDBC操作数据库
1.数据库特点 实现数据共享.减少数据的冗余度.数据的独立性.数据集中控制.数据的一致性和可维护性. 2.数据库种类和功能 (1)层次型数据库:类似于树结构,是一组通过链接而互相联系在一起的记录. ( ...
随机推荐
- Android:OptionMenu
MainActivity: package com.example.optionmenu; import android.content.Intent; import android.os.Bundl ...
- PyQt中如何隐藏Menu
PyQt中隐藏一个Menu Item,可以通过QAction的setVisible(False)来设置,而QMenu的setVisible(False)是不管用的. 现在问题来了,我们有一个菜单,它有 ...
- 如何用vs查看结构体布局
今天遇到一个问题: 假设在每个系统的structA 结构不同,我们在windbg看了以后直接拿来用,自己定义成结构体,如何来验证这个结构体内存布局是否和windbg一致. 当然笨办法是自己一个个成员数 ...
- C语言中关于scanf函数的用法
scanf()函数的控制串 函数名: scanf 功 能: 执行格式化输入 用 法: int scanf(char *format[,argument,...]); scanf()函数是通用终端格式化 ...
- BZOJ 1704: [Usaco2007 Mar]Face The Right Way 自动转身机( 贪心 )
贪心...先枚举k, 然后从左往右扫一遍, 发现位置p的牛的状态不符合就将 [p, p + k ) 的牛都转身, 假如p + k - 1 已经超过了最右边牛的位置那这个k就不符合要求. 符合要求的就可 ...
- SuperSocket源码解析之消息处理
一 简述 Tcp消息的处理本身是与Tcp消息传输过程独立的,是消息的两个不同阶段,从前面的会话生命周期我们已经知道消息的传输主要有SocketSession实现,而真正处理则交由AppSession实 ...
- 解说cocos2d-x几种画图方法的用法与思考
CCRenderTexture 自己的理解 CCRenderTexture类似一张空白的“画布“,用户通过自定义笔刷(CCSprite*),在touch事件中把笔刷的移动痕迹“记录”起来,从而“画”出 ...
- 使用ACE获取主机的IP地址
使用ACE获取主机的IP地址,不知道为什么会有127.0.0.1? #include "stdafx.h" #include "ace\OS.h" #inclu ...
- HDU 3790 最短路径问题 (SPFA)
转载请注明出处:http://blog.csdn.net/a1dark 分析:比一般最短路多了一个花费.多加一个判断即可.用的SPFA.这道题让我搞清楚了以前定义INF为啥爆的问题.受益颇多. #in ...
- 利用d3.js绘制中国地图
d3.js是一个比較强的数据可视化js工具. 利用它画了一幅中国地图,例如以下图所看到的: watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc3ZhcDE=/ ...