PHP与mysql数据库
1.PHP访问数据库的一般步骤
- 连接MySQL服务器
- 选择MySQL数据库
- 执行SQL语句(增,删,改,查)
- 关闭结果集,释放资源
- 关闭MySQL服务器的连接
需要查的表的数据:

2.连接和关闭实例
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
mysqli_close($link);
?>
3. mysql_select_db:选择当前操作的数据库。
代码示例:
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "employees")
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysqli_query($link, "select * from departments")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>"; mysqli_close($link);
?>
运行结果:

4.mysql_query:发送SQL语句或者MySQL命令。

5.mysql_affected_rows:是通过mysql_query()函数向MySQL服务器发送insert,update,delete语句之后,查看影响到的表记录行数
代码示例:
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "employees")
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysqli_query($link, "insert into departments(dept_no,dept_name) values('d011','dept_name_011')")
or die("插入失败"."<br/>");
echo "插入成功"."<br/>";
//使用mysql_query()函数, 向mysql发送的insert,update,delete语句,可以使用mysqli_affected_rows()函数查看影响到表记录行数
$insert_rows = mysqli_affected_rows($link);
echo $insert_rows."行插入了";
//数据库关闭
mysqli_close($link);
?>
6.mysql_num_rows:查看select语句查询到得表记录行数
代码示例:
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "employees")
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysqli_query($link, "select * from departments")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
//表的行数
$select_rows = mysqli_num_rows($query);
echo "表中的记录的行数是:".$select_rows."<br/>";
//字段数
$select_fileds = mysqli_num_fields($query);
echo "表中的记录的字段是:".$select_fileds."<br/>";
//释放结果集
mysqli_free_result($query);
//关闭连接的数据库
mysqli_close($link);
?>
运行结果:

7.mysql_free_result:释放内存
8. mysql_fetch_row:从结果集中取得下一行记录,并将该记录生成一个数组,数组的元素的键为从0开始的整数,数组元素的值依次为select语句中“字段列表”的值。
代码示例:
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "employees")
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysqli_query($link, "select * from departments order by dept_no")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
//查询结果遍历mysql_fech_row
while ($result_array=mysqli_fetch_row($query)) {
foreach ($result_array as $value){
echo $value." ";
};
echo "<br/>";
}
//关闭连接的数据库
mysqli_close($link);
?>
运行结果:

9.mysql_fecth_array: 该函数的返回值除了包含mysql_fetch_row函数的值,还包含select语句中" 字段列表=>字段列表值"的数组元素
代码示例:(可以直接用字段名作为数组下标)
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "employees")
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysqli_query($link, "select * from departments order by dept_no")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
//查询结果遍历mysql_fech_array
while ($result_array = mysqli_fetch_array($query)) {
echo $result_array["dept_no"]." ";
echo $result_array["dept_name"]."<br/>";
} //关闭连接的数据库
mysqli_close($link);
?>
10. mysql_create_db(): 在指定连接服务器上新建一个数据库
11. mysql_list_dbs(): 返回一个结果指针,包含了当前MySQL进程中所有可用的数据库
代码示例:
<?php
//连接数据库服务器
$link = mysql_connect("127.0.0.1","root","liupw")
or die("连接失败".mysql_error($link)."<br/>");
echo "连接成功"."<br/>";
$db_list = mysql_list_dbs($link);
while($row = mysql_fetch_array($db_list)){
foreach ($row as $key=>$value ){
echo $key."=>".$value."<br/>";
} } //关闭连数据库连接
mysql_close($link);
?>

12. mysql_list_tables(): 返回所有的表名
代码示例:
<?php
//连接数据库服务器
$link = mysql_connect("127.0.0.1","root","liupw")
or die("连接失败".mysql_error($link)."<br/>");
echo "连接成功"."<br/>";
// 服务器的数据库
$db_list = mysql_list_dbs($link);
while($row = mysql_fetch_row($db_list)){
foreach ($row as $value ){
echo $value."<br/>";
} }
echo "--------------------";
//"employees"数据库中的表
$tables = mysql_list_tables("employees");
while ($row2 = mysql_fetch_row($tables)){
foreach ($row2 as $value2){
echo $value2."<br/>";
}
}
//关闭连数据库连接
mysql_close($link);
?>
运行结果:

13. mysql_tablename:返回的结果指针以及一个整数索引作为参数并返回表名
代码示例:
<?php
//连接数据库服务器
$link = mysql_connect("127.0.0.1","root","liupw")
or die("连接失败".mysql_error($link)."<br/>");
echo "连接成功"."<br/>";
//"employees"数据库中的表
$tables = mysql_list_tables("employees");
for($i=0;$i<mysql_num_rows($tables);$i++){
//mysql_tablename返回的结果指针以及一个整数索引作为参数并返回表名
echo "表:".mysql_tablename($tables, $i)."<br/>";
}
//关闭连数据库连接
mysql_close($link);
?>
运行结果;

14.表字段的操作:
- mysql_num_fields() : 字段的数目
- mysql_field_name():字段的名字
- mysql_field_type() : 字段的数据类型
- mysql_field_len() : 指定字段的长度
mysql_fetch_length():当前字段的长度
代码示例:
<?php
//连接数据库服务器
$link = mysql_connect("127.0.0.1","root","liupw")
or die("连接失败".mysql_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysql_select_db("employees",$link)
or die("选择数据库employees失败"."<br/>");
echo "选择数据库employees成功"."<br/>";
//执行sql语句
$query=mysql_query("select * from departments order by dept_no desc",$link)
or die("查询失败"."<br/>");
echo "查询成功"."<br/>"; for($i=0;$i<mysql_num_fields($query);$i++){
echo mysql_field_name($query, $i)." ".
mysql_field_type($query, $i)." ".
mysql_field_len($query, $i)." ".
mysql_field_flags($query, $i)."<br/>";
}
echo "--------------"."<br/>";
//字段的长度,字段的名字
mysql_fetch_row($query);
$ziduan_length=mysql_fetch_lengths($query);
foreach ($ziduan_length as $value){
echo $value."<br/>";
} //关闭数据库连接
mysql_close($link);
?>
运行结果:

PHP与mysql数据库的更多相关文章
- nodejs进阶(6)—连接MySQL数据库
1. 建库连库 连接MySQL数据库需要安装支持 npm install mysql 我们需要提前安装按mysql sever端 建一个数据库mydb1 mysql> CREATE DATABA ...
- 当忘记mysql数据库密码时如何进行修改
因为长时间没有使用数据库了,或者把密码改完之后就忘了数据库密码,不能正常进入数据库,也无法修改密码,有一个简单的常用修改密码方式: 1.首先找到和打开mysql.exe和mysqld.exe所在的文件 ...
- MySQL数据库和InnoDB存储引擎文件
参数文件 当MySQL示例启动时,数据库会先去读一个配置参数文件,用来寻找数据库的各种文件所在位置以及指定某些初始化参数,这些参数通常定义了某种内存结构有多大等.在默认情况下,MySQL实例会按照一定 ...
- 一起学微软Power BI系列-使用技巧(1)连接Oracle与Mysql数据库
说起Oracle数据库,以前没用过Oracle不知道,但是这1年用Oracle后,发现真的是想狂吐槽,特别是那个.NET驱动和链接字符串,特别奇葩.总归是和其他数据库不一样,标新立异,不知道为何.另外 ...
- CentOS下mysql数据库常用命令总结
mysql数据库使用总结 本文主要记录一些mysql日常使用的命令,供以后查询. 1.更改root密码 mysqladmin -uroot password 'yourpassword' 2.远程登陆 ...
- [原创]java使用JDBC向MySQL数据库批次插入10W条数据测试效率
使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(100000),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:通过使用addBatch( ...
- mysql数据库主从同步
环境: Mater: CentOS7.1 5.5.52-MariaDB 192.168.108.133 Slave: CentOS7.1 5.5.52-MariaDB 192.168. ...
- PDO连接mysql数据库
1.PDO简介 PDO(PHP Data Object) 是PHP 5 中加入的东西,是PHP 5新加入的一个重大功能,因为在PHP 5以前的php4/php3都是一堆的数据库扩展来跟各个数据库的连接 ...
- mysql数据库开发常见问题及优化
mysql 数据库是被广泛应用的关系型数据库,其体积小.支持多处理器.开源并免费的特性使其在 Internet 中小型网站中的使用率尤其高.在使用 mysql 的过程中不规范的 SQL 编写.非最优的 ...
- 如何在删除ibdata1和ib_logfile的情况下恢复MySQL数据库
昨天,有个朋友对公司内部使用的一个MySQL实例开启binlog,但是在启动的过程中失败了(他也没提,为何会失败),在启动失败后,他删除了ibdata1和ib_logfile,后来,能正常启动了,但所 ...
随机推荐
- 【swupdate文档 二】许可证
许可证 SWUpdate是免费软件.它的版权属于Stefano Babic和其他许多贡献代码的人(详情请参阅实际源代码和git提交信息). 您可以根据自由软件基金会发布的GNU通用公共许可证第2版的条 ...
- Ubuntu 14.04 安装gstreamer0.10-ffmpeg
sudo apt-add-repository ppa:mc3man/trusty-media sudo apt-get update sudo apt-get install -y gstreame ...
- Yii 1.1.17 五、分页类、关联模型、权限验证与默认页面跳转
一.分页类使用 1.在控制器中 // 实例化 $criteria = new CDbCriteria(); $articleModel = Article::model(); // 分页 $total ...
- 可以高度定制的代理服务器anyproxy
简介 anyproxy是一款可以高度定制的代理服务器,基于nodejs. 特征 支持https明文代理 支持低网速模拟 支持二次开发,可以用javascript控制代理的全部流程,搭建前端个性化调试环 ...
- centos7下opencv的安装
os:centos7 opencv:opencv3.0.0 for linux reference:http://www.cnblogs.com/xixixing/p/6096057.html det ...
- 在Dubbo中使用高效的Java序列化(Kryo和FST)
在Dubbo中使用高效的Java序列化(Kryo和FST) 作者:沈理 文档版权:Creative Commons 3.0许可证 署名-禁止演绎 完善中…… TODO 生成可点击的目录 目录 序列化漫 ...
- 用淘宝镜像cnpm代替npm
安装淘宝镜像cnpm: $ sudo npm install -g cnpm --registry=https://registry.npm.taobao.org 然后就大部分可以用cnpm来代替np ...
- 使用JAXB读写xml
1.注解 在Java模型中的创建与 xml 文件对应的节点和属性需要用注解来表示 @XmlRootElement 作用:将一个Java类映射为一段XML的根节点参数: name 定义这个根节点 ...
- java InputStream读取数据问题
原文 1. 关于InputStream.read() 在从数据流里读取数据时,为图简单,经常用InputStream.read()方法.这个方法是从流里每次只读取读取一个字节,效率会非常低. ...
- AC日记——统计和 洛谷 P2068
统计和 思路: 水题: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 100005 int n,m,tree ...