php数据库之mysql connect create insert select

本文涉及的产品
云数据库 RDS SQL Server,独享型 2核4GB
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
简介:

免费的 MySQL 数据库通常是通过 PHP 来使用的。

连接到一个 MySQL 数据库

在您能够访问并处理数据库中的数据之前,您必须创建到达数据库的连接。

在 PHP 中,这个任务通过 mysql_connect() 函数完成。

语法
mysql_connect(servername,username,password);

参数 
描述

servername 
可选。规定要连接的服务器。默认是 "localhost:3306"。

username 
可选。规定登录所使用的用户名。默认值是拥有服务器进程的用户的名称。

password 
可选。规定登录所用的密码。默认是 ""。

注释:虽然还存在其他的参数,但上面列出了最重要的参数。请访问 W3School 提供的 PHP MySQL 参考手册,获得更多的细节信息。

例子

在下面的例子中,我们在一个变量中 ($con) 存放了在脚本中供稍后使用的连接。如果连接失败,将执行 "die" 部分:

<?php
$con = mysql_connect("localhost","root","123456");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

?>

关闭连接

脚本一结束,就会关闭连接。如需提前关闭连接,请使用 mysql_close() 函数。

<?php
$con = mysql_connect("localhost","root","123456");
if (!$con)
  {
  die('Could not connect: ' . mysql_error());
  }

// some code

mysql_close($con);
?>

创建数据库

CREATE DATABASE 语句用于在 MySQL 中创建数据库。

语法
CREATE DATABASE database_name

为了让 PHP 执行上面的语句,我们必须使用 mysql_query() 函数。此函数用于向 MySQL 连接发送查询或命令。

例1:在下面的例子中,我们创建了一个名为 "my_db" 的数据库

展示了如何创建一个名为 "Persons" 的表,此表有三列。列名是 "FirstName", "LastName" 以及 "Age"

<?php 
$con = mysql_connect("localhost","root","123456"); 
if (!$con) 
  { 
  die('Could not connect: ' . mysql_error()); 
  }

// Create database 
if (mysql_query("CREATE DATABASE myb",$con)) 
  { 
  echo "Database created"; 
  } 
else 
  { 
  echo "Error creating database: " . mysql_error(); 
  }

// Create table in my_db database 
mysql_select_db("myb", $con); 
$sql = "CREATE TABLE Persons 

FirstName varchar(15), 
LastName varchar(15), 
Age int 
)"; 
mysql_query($sql,$con);

mysql_close($con); 
?>

 

image

image

image

例2:插入数据 php insert

INSERT INTO 语句用于向数据库表中插入新记录。

向数据库表插入数据

INSERT INTO 语句用于向数据库表添加新记录。

语法
INSERT INTO table_name
VALUES (value1, value2,....)

您还可以规定希望在其中插入数据的列:

INSERT INTO table_name (column1, column2,...)
VALUES (value1, value2,....)

注释:SQL 语句对大小写不敏感。INSERT INTO 与 insert into 相同。

为了让 PHP 执行该语句,我们必须使用 mysql_query() 函数。该函数用于向 MySQL 连接发送查询或命令。

例子

在前面的章节,我们创建了一个名为 "Persons" 的表,有三个列:"Firstname", "Lastname" 以及 "Age"。我们将在本例中使用同样的表。下面的例子向 "Persons" 表添加了两个新记录:

<?php 
$con = mysql_connect("localhost","root","123456"); 
if (!$con) 
  { 
  die('Could not connect: ' . mysql_error()); 
  }

mysql_select_db("myb", $con);

mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('jiping', 'Guo', '23')");

mysql_query("INSERT INTO Persons (FirstName, LastName, Age) 
VALUES ('Lu', 'Guo', '24')");

mysql_close($con); 
?>

image

例3:把来自表单的数据插入数据库

现在,我们创建一个 HTML 表单,这个表单可把新记录插入 "Persons" 表。

这是这个 HTML 表单:

image

image

当用户点击上例中 HTML 表单中的提交按钮时,表单数据被发送到 "insert.php"。"insert.php" 文件连接数据库,并通过 $_POST 变量从表单取回值。然后,mysql_query() 函数执行 INSERT INTO 语句,一条新的记录会添加到数据库表中。

image

image

查数据库:

image

添加成功!

例3:php select

SELECT 语句用于从数据库中选取数据。

从数据库表中选取数据

SELECT 语句用于从数据库中选取数据。

语法
SELECT column_name(s) FROM table_name

注释:SQL 语句对大小写不敏感。SELECT 与 select 等效。

为了让 PHP 执行上面的语句,我们必须使用 mysql_query() 函数。该函数用于向 MySQL 发送查询或命令。

例子

下面的例子选取存储在 "Persons" 表中的所有数据(* 字符选取表中所有数据):

<?php 
$con = mysql_connect("localhost","root","123456"); 
if (!$con) 
  { 
  die('Could not connect: ' . mysql_error()); 
  }

mysql_select_db("myb", $con);

$result = mysql_query("SELECT * FROM Persons");

while($row = mysql_fetch_array($result)) 
  { 
  echo $row['FirstName'] . " " . $row['LastName']; 
  echo "
"; 
  }

mysql_close($con); 
?>

上面这个例子在 $result 变量中存放由 mysql_query() 函数返回的数据。接下来,我们使用 mysql_fetch_array() 函数以数组的形式从记录集返回第一行。每个随后对 mysql_fetch_array() 函数的调用都会返回记录集中的下一行。 while loop 语句会循环记录集中的所有记录。为了输出每行的值,我们使用了 PHP 的 $row 变量 ($row['FirstName'] 和 $row['LastName'])。

image

用表格呈现:

image

image



本文转自 gjp0731 51CTO博客,原文链接:http://blog.51cto.com/guojiping/1286624


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
21天前
|
存储 缓存 关系型数据库
百度搜索:蓝易云【MySQL之优化SELECT语句】
通过以上优化方法,可以显著提高MySQL SELECT语句的查询性能和效率。
27 5
|
21天前
|
存储 关系型数据库 MySQL
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
MySQL技能完整学习列表5、数据库操作——1、创建数据库和表——2、修改表结构(ALTER TABLE)
128 0
|
2天前
|
SQL NoSQL 关系型数据库
关系型数据库管理系统Mysql
关系型数据库管理系统Mysql
|
21天前
|
SQL 关系型数据库 MySQL
MySQL技能完整学习列表10、数据导入和导出——1、数据导入(LOAD DATA, mysqldump)——2、数据导出(SELECT ... INTO OUTFILE, mysqldump)
MySQL技能完整学习列表10、数据导入和导出——1、数据导入(LOAD DATA, mysqldump)——2、数据导出(SELECT ... INTO OUTFILE, mysqldump)
28 0
|
5天前
|
SQL 关系型数据库 MySQL
【JavaEE进阶】 数据库连接池与MySQL企业开发规范
【JavaEE进阶】 数据库连接池与MySQL企业开发规范
|
5天前
|
安全 关系型数据库 MySQL
Mysql注入 -- 数据库导出及读文件
Mysql注入 -- 数据库导出及读文件
84 0
|
6天前
|
SQL 关系型数据库 MySQL
Python中的数据库操作:SQLite与MySQL的连接
Python中的数据库操作:SQLite与MySQL的连接
|
19天前
|
NoSQL 关系型数据库 MySQL
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
不同系统下进行MySQL安装、MongoDB安装、Redis安装【2月更文挑战第5天】
220 5
Windows、Linux、Mac安装数据库(mysql、MongoDB、Redis)#0
|
21天前
|
关系型数据库 MySQL 数据库
MySQL员工打卡日志表——数据库练习
MySQL员工打卡日志表——数据库练习
83 0
|
21天前
|
监控 关系型数据库 MySQL
MySQL技能完整学习列表12、性能优化——1、性能指标和监控——2、优化查询和数据库结构——3、硬件和配置优化
MySQL技能完整学习列表12、性能优化——1、性能指标和监控——2、优化查询和数据库结构——3、硬件和配置优化
73 0