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,后来,能正常启动了,但所 ...
随机推荐
- [NOI2008] [bzoj1061] 志愿者招募
还是一道费用流的题目.话不多说,进入正题. 题意:给定n个点和m种从l到r覆盖一层的费用,求满足所有点的覆盖层数都大等于权值的最小费用 分析:要做到区间修改,看似比较麻烦. 用差分把区间修改变成单点修 ...
- Python3 高阶函数
高阶函数 (满足其一就是:(1)一个函数名作为另一个函数的形参:(2)返回值包含函数名;不修改函数的调用方式) 1.一个函数名作为另一个函数的形参 输出结果: 2.返回值包含函数名;不修改函数的 输出 ...
- 【Python学习笔记】多版本python使用pip安装第三方库
不知道是不是有人跟我一样,一直Python2与Python3混着用,然而在cmd中默认的Python版本只有一种,使用 pip install xxx(第三方库名) 只会安装到默认版本上. 而如果需 ...
- ARM中断向量表与响应流程【转】
转自:http://blog.csdn.net/honour2sword/article/details/40213417 一首先中断向量表定义在哪里?如何加载? 二 中断向量表与中断服务程序 三处理 ...
- yocto 离线编译
使用yocto编译一个软件包时,一般会先在本地寻找下载好的源码包,如果不存在则根据配置从网络下载. 添加本地源码包 为了支持离线编译,添加一个包的配置文件后,需要在本地也准备好源码包. 可以先打开网络 ...
- SD卡 模拟SPI总线控制流程
SD卡为移动设备提供了安全的,大容量存储解决方法.它本身可以通过两种总线模式和MCU进行数据传输,一种是称为SD BUS的4位串行数据模式,另一种就是大家熟知的4线SPI Bus模式.一些廉价,低端的 ...
- Laravel 调试器 Debugbar 和数据库导出利器 DbExporter 扩展安装及注意事项
一.Debugbar安装 参考:Laravel 调试利器 —— Laravel Debugbar 扩展包安装及使用教程 的“2.安装”部分 二.DbExporter安装 参考:Laravel 扩展推荐 ...
- C#数据没初始化,使用会报错,可以初始化null
protected void Page_Load(object sender, EventArgs e) { string[] A; if (B== 0) { A = new string[] {1, ...
- Java中volatile修饰符,不稳定标记的用法笔记
今天学java特性时,发现了volatile修饰符,这个修饰符修饰的变量告诉java编译器忽略优化机制,这样的优势是: java优化后,寄存器会缓存内存里的变量,另一个线程修改这个变量的内存时,不会同 ...
- aspxpivotgrid排序
protected virtual void SetSortBySummary() { foreach (PivotGridField field in grid.Fields) { if (fiel ...