PHP中数据库的基本知识点有哪些?基本语句?基本概念?

上篇文章给大家介绍了《php中作用域划分为哪几种?作用域能够被访问的区域是?》,本文继续给大家介绍php中数据库的基本知识点有哪些?基本语句?基本概念?有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP中数据库的基本知识点有哪些?基本语句?基本概念?

数据库基本概念

命令结束符:“g”或是“;”

Mysql支持数据类型:

立即学习“PHP免费学习笔记(深入)”;

数值型

整数类型

Tinyint、smallint、mediumint、int和bigint

 Ddl语句(命令大小写都可以)

 创建数据库

 Create database 数据库名

登录后复制

选择要操作的数据库:use数据库;对于要操作的数据库我们需要使用use来选择

 查看数据库中的所有数据表show tables

 删除数据库

 Drop database 数据库名称

登录后复制

创建表(在某个数据库里面创建表,需要先使用use选择到要操作的数据库里)

Create table 表名(字段1名字  字段1类型  列的约束条件,字段2名字  字段2类型  列的约束条件,

创建完表之后可以查看表单定义

Desc 表名;

登录后复制

查看创建表的SQL语句

 Show create table 表名G(G选项使得记录能按照字段竖向排列,一遍更好展示内容较长的记录,G之后不需要加分号)

登录后复制

 删除表

Drop table 表名;

登录后复制

修改表字段类型

 Alter table 表名 modify [colimn] 字段定义 [first|after字段名];

登录后复制

增加表字段

Alter table 表名 add [colimn] 字段定义 [first|after字段名];

登录后复制

删除表字段

Alter table 表名 change [colimn] 旧的字段名 字段定义 [first|after字段名];

登录后复制

注:change与modify都可以修改表的定义,不同的是change后面需要解两次列名,不是特别方便,优点是change可以修改字段名

修改字段排列排序

[first|after字段名]这个选择可以用来修改字段在表中的位置,新增字段默认是加载在表中最后位置,而change/modify默认不会改变字段位置

注:change/first|after 字段名 这些关键字都是属于mysql在标准sql上的扩展,在其他数据库上不一定适用

更改表名

After table 表名 rename [to] 新的表名Dml语句

登录后复制

插入记录

Insert into 表名(字段1,字段2, …,字段n) values(值1,值2,… ,值n);

可以不用指定字段名,但是values后面的顺序应该与字段排序一致

 一次性插入多条记录

Insert into 表名(字段1,字段2, …,字段n)

Values

(值1,值2,… ,值n),

(值1,值2,… ,值n)

;

查询记录

select * from 表名 where 条件;(*代表你查询表里的所有字段,如果我们查询某一字段,只需要将*改成那一字段即可。)

登录后复制

 查询不重复的记录

Select distinct 字段1,字段2 from 表名;(只要字段1,字段2任何一个字段有不同就会被选择,一般用于distinct,只筛选一个字段)

登录后复制

 条件查询

注:条件查询比较符号:=,,>=,

排序和限制

排序:

asc:由低到高,也是默认值select * from 表名 order by 字段名 asc;

desc:由高到底select * from 表名 order by字段名 desc;

多个字段排序select * from 表名 order by 字段名 desc,id desc;

数字1代表从第几条记录开始取(是从0开始的),数字2代表取几条!

聚合

用户需要进行一些汇总操作,这就需要sql聚合操作。

①sum求和select sum(字段名) from 表名;

②count记录总数select count(*|字段名) from 表名;

③max最大值select max(字段名) from 表名;

④min最小值select min(字段名) from 表名;

⑤GROUP BY分类聚合select department,sum(salary) from employee group by department;

⑥WITH ROLLUP分类聚合后的结果进行再汇总select sum(salary) from employee group by department with rollup;

⑦HAVING

注意:having和where的区别在于,having是对聚合后的结果进行条件过滤,而where是在聚合前就对记录进行过滤,应该尽可能的对记录进行先过滤!

select sum(salary) from employee group by department having sum(salary)>1000;在一起使用:select sum(id),max(id),min(id),count(*) from a1;

登录后复制

表连接(显示多个表中字段时可以使用)

连接分类

 内连接:选取两张表中相互匹配的记录(select 表.字段,….  from 表1名,表2名,…  where [匹配的条件比如 表1.字段=表2.字段];)

select 语句可以给字段起别名!直接写在需要查询显示的字段的后面就行,也可以给表起别名

外连接:不仅仅选取两张相互匹配的记录,其他不匹配的记录也会查询出来

左连接

包含左边表中的所有记录(包括右表中没有和它匹配的记录)select * from 表1 left join 表2 on 表1.字段=表2.字段;

包含右边表中的所有记录(包括左表中没有和它匹配的记录)

左连接和右连接是可以相互转换的!

子查询(一个查询需要另外一个查询的结果参与的时候)

用于子查询的关键字:

in在..里面(注意点 in后面的子语句必须只返回一个字段,若查询结果唯一(只有一条)可以使用=代替in,not in与in相反)

语法:select * from 表名1 where 字段1 in(select 字段2 from 表2);

登录后复制

 Exists(后面那个子语句有没有查询出记录来,如果查询出记录来返回true,否则就是false,并且查询出来的记录的具体的值是NULL也可以,也是返回true.)

语法:select语句 where exists(select 语句);

登录后复制

 not exits(与exists相反)

记录联合(我们常常会碰到需要将两个表或者多个表的数据按照一定的查询条件查询出来后,将结果合并到一起显示这是就需要用到记录联合)

 多个select 语句用UNION或者UNION ALL隔开即可实现

区别: 前者会将多个查询结果合并后并且进行去除重复后返回,后者 则直接合并并不去除重复

联合的条件:查询的列个数要相等 

更新记录

更新一个表

Update 表名 set 字段1=值1,字段2=值2,...,字段n=值n[where条件];

登录后复制

更新多个表中数据

Update 表1,表2,...表n  set 表1.字段1=表达式1,...,表n.字段n=表达式n[where条件];

登录后复制

注:多表更新更多是用在根据一个标的字段来动态更新另一表的字段

推荐学习:php视频教程

 

以上就是PHP中数据库的基本知识点有哪些?基本语句?基本概念?的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2511608.html

(0)
上一篇 2025年3月5日 14:36:27
下一篇 2025年2月24日 16:02:16

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 分享一个ASP.NET数据库操作类的实例

    这篇文章主要介绍了asp.net数据库操作类,结合实例形式分析了asp.net基本的数据库增删改查操作封装相关技巧,需要的朋友可以参考下 本文实例讲述了ASP.NET数据库操作类。分享给大家供大家参考,具体如下: using System;…

    编程技术 2025年3月5日
    200
  • ADO.NET实现对SQL Server数据库的操作教程

    本篇文章主要介绍了ado.net实现对sql server数据库的增删改查示例,非常具有实用价值,需要的朋友可以参考下。 了解了上一篇的ADO.NET简介,我们就可以来对数据库进行增删改查等基本操作了!下面是每种操作的具体实现。 先在自定义…

    编程技术 2025年3月5日
    200
  • 解析ADO.NET对SQL Server数据库执行增删改查操作详解

    本篇文章主要介绍了ado.net实现对sql server数据库的增删改查示例,非常具有实用价值,需要的朋友可以参考下。 了解了上一篇的ADO.NET简介,我们就可以来对数据库进行增删改查等基本操作了!下面是每种操作的具体实现。 先在自定义…

    编程技术 2025年3月5日
    200
  • 如何在Go中使用数据库?

    随着web应用程序和其他复杂应用程序在互联网上的广泛普及,数据库已经成为不可或缺的部分。go是一种流行的编程语言,可以用于web应用程序和其他系统开发。在本文中,我们将探讨如何在go中使用数据库。 选择数据库 在开始使用数据库之前,首先需要…

    编程技术 2025年3月4日
    200
  • Golang中的数据库测试技巧

    Golang中的数据库测试技巧 引言:在开发应用程序时,数据库测试是一个非常重要的环节。合适的测试方法可以帮助我们发现潜在的问题并确保数据库操作的正确性。本文将介绍Golang中的一些常用数据库测试技巧,并提供相应的代码示例。 一、使用内存…

    2025年3月4日
    200
  • Go语言中如何解决并发数据库查询优化问题?

    Go语言中如何解决并发数据库查询优化问题? 在日常的开发过程中,我们经常会遇到需要从数据库中查询大量数据的场景。而在并发环境下,数据库查询的性能往往会成为瓶颈。本文将介绍一些在Go语言中解决并发数据库查询优化问题的方法,并提供一些具体的代码…

    2025年3月4日
    200
  • Go语言中如何处理并发数据库数据一致性问题?

    Go语言中如何处理并发数据库数据一致性问题? 当多个并发请求同时访问数据库时,会引发数据一致性问题。在Go语言中,我们可以使用事务和锁来处理这个问题。下面我将详细介绍如何在Go语言中处理并发数据库数据一致性问题,并给出具体的代码示例。 首先…

    2025年3月4日
    200
  • Go语言中数据库的应用挑战与解决方案

    Go语言中使用数据库的挑战与解决方案 随着互联网的快速发展,数据库成为了存储和管理数据的核心技术之一。作为一门高效、易用的编程语言,Go语言在数据库的应用方面也日益流行。然而,Go语言中使用数据库也存在着一些挑战,本文将探讨这些挑战,并给出…

    2025年3月4日
    200
  • Go语言如何实现数据库的增删改查操作?

    Go语言是一种高效、简洁且易于学习的编程语言,因其在并发编程和网络编程方面的优势而备受开发者青睐。在实际开发中,数据库操作是不可或缺的一部分,本文将介绍如何使用Go语言实现数据库的增删改查操作。 在Go语言中,我们通常使用第三方库来操作数据…

    2025年3月4日
    200
  • 如何在 Golang 中从数据库中检索 JSON 数据?

    在 golang 中从数据库检索 json 数据可以通过以下步骤:使用 sql.rawbytes 类型存储 json 数据;执行查询并扫描数据到 sql.rawbytes 变量中;使用 json.unmarshal 函数反序列化 json …

    2025年3月4日
    200

发表回复

登录后才能评论