数据库基础知识--数据库php连接

Posted sweeeper

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库基础知识--数据库php连接相关的知识,希望对你有一定的参考价值。

关系数据库的常用基本术语 

  数据data

  数据库database

  数据库管理系统dbms

  表(数据表)table

  字段field,列column

  行row,记录record

 

数据库操作的基本模式(流程)

  建立连接(认证身份)

  客户端向服务器端发送sql命令

  服务器端执行命令,并返回执行的结果

  客户端接收结果(并显示)

  断开连接

<?php
//1,连接数据库:
$mylink = mysql_connect("localhost", \'root\', \'\');//连接到数据库
//2,设定连接编码(通常是utf8)
mysql_set_charset("utf8"); //也可以使用:mysql_query("set names utf8");
//3,选择数据库(如有需要)
mysql_select_db("temptab1"); //也可以使用:mysql_query("use 数据库名");数据库名字一定要对
//4,执行sql命令。
//$result = mysql_query( "几乎任何sql语句 ");
if(1 == 1){
$randName = rand(1000, 9999); //获得一个随机数
$sql = "insert into temptab1(id, name)values($randName, \'user_$randName\');" ; //基本上写好这条sql语句就可以,往temptab1表格里,先建立一个id,name,往里面分别插入数据
$str = "asf\'afas\'fafs"; //上一行单引号在php中只是一个普通字符
$result = mysql_query( $sql ); //执行该sql语句,并存结果
//返回的结果通常需要分两种情形进行处理:
//4.1:如果是无返回数据的语句:
//4.1.1 如果$result为true,表示执行成功
if($result == true){
echo "插入数据成功";
}
//4.1.2 如果$result为false,表示执行失败
else{
echo "失败,请参考失败提示信息:" . mysql_error();
}
}

//下面开始执行select这种“返回数据”的语句,并显示结果
$sql = "select * from temptab1 where id > 1";
$result = mysql_query($sql); //这里如果执行成功,则被称为“数据集”(结果集)
if($result === false){
echo "失败,请参考失败提示信息:" . mysql_error();
}
else{
echo "<table border=\'10\'>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
//它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
//该数组的下标就是该select的字段名,值就是对应行的数据值
echo "<tr>";
echo "<td>" . $record[\'id\'] . "</td>";
echo "<td>" . $record[\'name\'] . "</td>";
echo "</tr>";
}
echo "</table>";
}

//下面开始执行非select但返回数据的命令显示结果
$sql = "show databases;"; //换成“desc 表名”这个命令,也是得到数据
$result = mysql_query($sql); //这里如果执行成功,则被称为“数据集”(结果集)
if($result === false){
echo "失败,请参考失败提示信息:" . mysql_error();
}
else{
echo "<table border=\'1\'>";
echo "<tr>";
echo "<td>Database</td>";
echo "</tr>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
//它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
//该数组的下标就是该select的字段名,值就是对应行的数据值
echo "<tr>";
echo "<td>" . $record[\'Database\'] . "</td>";
echo "</tr>";
}
echo "</table>";
}

//下面开始执行非select但返回数据的命令显示结果
$sql = "show databases;";
$sql = "desc temptab1;";
$sql = "select * from temptab1";
$result = mysql_query($sql); //这里如果执行成功,则被称为“数据集”(结果集)
if($result === false){
echo "失败,请参考失败提示信息:" . mysql_error();
}
else{
$fieldCount = mysql_num_fields($result); //得到结果集的字段个数
echo "<table border=\'1\'>";
//输出表头部分,内容是字段名:
echo "<tr>";
for($i = 0; $i < $fieldCount; ++$i){ //在每一行中对所有列进行“遍历”
$fieldName = mysql_field_name($result, $i);//从结果集中取的第i个字段的名字(i从0开始算起)
echo "<td>" . $fieldName . "</td>";
}
echo "</tr>";
while( $record = mysql_fetch_array( $result )){
//mysql_fetch_array()函数的作用类似foreach对数组的作用:遍历(结果集)
//它每次去的结果集的“一行数据”,并“装入”到数组 $record 中
//该数组的下标就是该select的字段名,值就是对应行的数据值

//echo "<tr>";
//echo "<td>" . $record[\'Field\'] . "</td>";
//echo "<td>" . $record[\'Type\'] . "</td>";
//echo "</tr>";
//上述代码要写若干项,但如果字段名(和字段个数)不确定,则怎么办?
echo "<tr>";
for($i = 0; $i < $fieldCount; ++$i){ //在每一行中对所有列进行“遍历”
$fieldName = mysql_field_name($result, $i);//从结果集中取的第i个字段的名字(i从0开始算起)
echo "<td>" . $record[$fieldName] . "</td>";
}
echo "</tr>";
}
echo "</table>";
}
?>

 

 

转自:http://www.cnblogs.com/shiyou00/p/5576667.html

以上是关于数据库基础知识--数据库php连接的主要内容,如果未能解决你的问题,请参考以下文章

比较有用的php代码片段

PHP面向对象之选择工厂和更新工厂

数据库基础知识--数据库php连接

错误:E/RecyclerView:未连接适配器;跳过片段上的布局

哪一个更快,为什么 - Php连接内部和外部的功能

部分代码片段