[关闭]
@caelumtian 2017-08-30T19:29:02.000000Z 字数 2921 阅读 855

web程序设计 第九课 - 基于web的数据库访问

Web程序设计(考研)

关系型数据库

简介

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,
每个数据库都有一个或多个不同的API用于创建,访问,管理,搜索和复制所保存的数据。
我们也可以将数据存储在文件中,但是在文件中读写数据速度相对较慢。
所以,现在我们使用关系型数据库管理系统(RDBMS)来存储和管理的大数据量。所谓的关系型数据库,是建立在关系模型基础上的数据库,借助于集合代数等数学概念和方法来处理数据库中的数据。

结构化查询语句

SQL 指结构化查询语言,全称是 Structured Query Language。是用于访问和处理数据库的标准的计算机语言。SQL语句由如下特点:

SQL SELECT语句

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

  1. SELECT column_name,column_name FROM table_name;

SQL WHERE

WHERE 子句用于过滤记录。

  1. SELECT column_name,column_name
  2. FROM table_name
  3. WHERE column_name operator value;

SQL INSERT INTO 语句

INSERT INTO 语句用于向表中插入新记录。INSERT INTO 语句可以有两种编写形式。
第一种形式无需指定要插入数据的列名,只需提供被插入的值即可:

  1. INSERT INTO table_name
  2. VALUES (value1,value2,value3,...);

第二种形式需要指定列名及被插入的值:

  1. INSERT INTO table_name (column1,column2,column3,...)
  2. VALUES (value1,value2,value3,...);

SQL UPDATE 语句

UPDATE 语句用于更新表中的记录。

  1. UPDATE table_name
  2. SET column1=value1,column2=value2,...
  3. WHERE some_column=some_value;

SQL DELETE 语句

DELETE 语句用于删除表中的记录。

  1. DELETE FROM table_name
  2. WHERE some_column=some_value;

SQL DROP

通常用来删除一张表

  1. DROP (TABLE | DATABASE) (IF EXSTS) name

SQL CREATE TABLE

CREATE TABLE 语句用于创建数据库中的表。表由行和列组成,每个表都必须有个表名。

  1. CREATE TABLE table_name
  2. (
  3. column_name1 data_type(size),
  4. column_name2 data_type(size),
  5. column_name3 data_type(size),
  6. ....
  7. );

PHP 连接数据库

连接数据库

在 PHP 中,连接到一个 MySQL 数据库通过 mysql_connect() 函数完成。

  1. $con = mysql_connect(servername, username, password);

关闭数据库连接

  1. mysql_close($con);

选择要访问的数据库

选择要访问的数据库通过

  1. mysqli_select_db($con, "my_db");

执行SQL语句

利用mysql_query()函数来执行需要的sql语句, 语句的执行结果作为返回值

  1. $result = mysqli_query($con, "select * from table");

查找行数&字段数

  1. mysqli_num_rows($result)
  1. mysqli_num_fields($result)

查找数据

mysqli_fetch_assoc($result)查找第一条数据

附录

1.样例程序

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>Document</title>
  6. </head>
  7. <body>
  8. <form action="" method="POST">
  9. <table name="table">
  10. <tr>
  11. <td>姓名</td>
  12. <td><input id="a" type="text" name="name"></td>
  13. </tr>
  14. <tr>
  15. <td>年龄</td>
  16. <td><input id="b" type="text" name="age"></td>
  17. </tr>
  18. </table>
  19. <input id="sub" type="submit" value="添加内容">
  20. </form>
  21. <script>
  22. var sub = document.getElementById("sub");
  23. sub.addEventListener("click",function(event){
  24. event.preventDefault();
  25. var userName = document.getElementById("a");
  26. var userAge = document.getElementById("b");
  27. var flag = true;
  28. if(userName.value.trim() == ""){
  29. alert("请输入您的姓名");
  30. flag = false;
  31. }
  32. if(userAge.value.trim() == ""){
  33. alert("请输入您的年龄");
  34. flag = false;
  35. }
  36. if(flag){
  37. document.forms[0].submit();
  38. }
  39. },false)
  40. </script>
  41. </body>
  42. </html>
  43. <?php
  44. $userName = $_POST["name"];
  45. $userAge = $_POST["age"];
  46. $db = mysqli_connect("127.0.0.1:3306","root","tgy19940524");
  47. if(mysqli_connect_errno($db)) {
  48. echo "数据库连接错误".mysqli_connect_error();
  49. }
  50. mysqli_select_db($db,"hyy");
  51. $str = "insert into test (name, age)values('".$userName."',".$userAge.")";
  52. echo $str;
  53. $result = mysqli_query($db, $str);
  54. if($result) {
  55. echo "数据添加成功";
  56. }else {
  57. echo "数据添加失败";
  58. }
  59. $data = mysqli_query($db, "select * from test");
  60. echo "<ul>";
  61. while($row = mysqli_fetch_assoc($data)) {
  62. echo "<li>姓名:".$row["name"]." 年龄:".$row["age"]."</li>";
  63. }
  64. echo "</ul>";
  65. ?>
添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注