Heim > Backend-Entwicklung > PHP-Problem > Was sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?

Was sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?

慕斯
Freigeben: 2023-03-10 16:30:01
Original
2794 Leute haben es durchsucht

Der vorherige Artikel stellte Ihnen vor: „Welche Arten von Bereichen gibt es in PHP? Auf welchen Bereich kann mit dem Oszilloskop zugegriffen werden? 》In diesem Artikel erfahren Sie weiterhin, was die grundlegenden Wissenspunkte von Datenbanken in PHP sind. Grundaussage? Grundkonzept? Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird für alle hilfreich sein.

Was sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?

Grundlegende Datenbankkonzepte

Befehlsendezeichen: „g“ oder „;“

Mysql unterstützt Datentypen:

  • Numerischer Typ

  • Integer-Typ

Ti nyint, smallint , mediumint, int und bigint

Ddl-Anweisung (bei Befehlen kann die Groß-/Kleinschreibung beachtet werden)

Erstellen Sie eine Datenbank

 Create database 数据库名
Nach dem Login kopieren

Wählen Sie die zu bedienende Datenbank aus: use Database; für die zu bedienende Datenbank müssen wir use to verwenden Wählen Sie

Datenbank anzeigen. Alle Datentabellen in Tabellen anzeigen.

Datenbank löschen Tabelle Tabellenname (

Feld 1 Name Feld 1 Typ Spaltenbeschränkungen,

Feld 2 Name Feld 2 Typ Spaltenbeschränkungen,

Nach dem Erstellen der Tabelle können Sie die Formulardefinition anzeigen

 Drop database 数据库名称
Nach dem Login kopieren

Sehen Sie sich die SQL-Anweisung an, die die erstellt hat Tabelle

Desc 表名;
Nach dem Login kopieren

Tabelle löschen

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

Tabellenfeldtyp ändern

Drop table 表名;
Nach dem Login kopieren

Tabellenfeld hinzufügen

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

Tabellenfeld löschen

Alter table 表名 add [colimn] 字段定义 [first|after字段名];
Nach dem Login kopieren
Hinweis: Sowohl ändern als auch kann die Definition der Tabelle ändern Der Unterschied besteht darin, dass Sie die Spalten nach der Änderung des Namens nicht besonders praktisch lösen müssen. Der Vorteil besteht darin, dass change den Feldnamen ändern kann. Ändern Sie die Feldanordnung und -sortierung. first|after field name] Mit dieser Auswahl kann die Position des Felds in der Tabelle geändert werden. Neue Felder werden standardmäßig an der letzten Position in der Tabelle geladen und change/modify ändert sich nicht die Feldposition standardmäßig

Hinweis: Diese Schlüsselwörter von „change/first|after“-Feldnamen gehören zu MySQL-Erweiterungen auf Standard-SQL sind möglicherweise nicht auf andere Datenbanken anwendbar

Tabellennamen ändernchange可以修改字段名

修改字段排列排序

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

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

更改表名

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

插入记录

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

可以不用指定字段名,但是values

After table 表名 rename [to] 新的表名
Dml语句
Nach dem Login kopieren

Datensätze einfügen

Einfügen in Tabellennamen (Feld 1, Feld 2, ..., Feld n) Werte (Wert 1, Wert 2,..., Wert n);

Sie müssen den Feldnamen nicht angeben, aber Die Reihenfolge nach values sollte mit der Feldsortierung übereinstimmen

Mehrere Datensätze gleichzeitig einfügen

In Tabellennamen einfügen (Feld 1, Feld 2, ..., Feld n)

Werte

(Wert 1, Wert 2,..., Wert n),

(Wert 1, Wert 2,..., Wert n)

;

Datensätze abfragen

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

Eindeutige Datensätze abfragen

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

Bedingte Abfrage

    Hinweis: Vergleichssymbole für bedingte Abfragen: =,<,>,>= ,<=,!= und andere Vergleichsoperatoren. Sie können oder und usw. zwischen mehreren Bedingungen verwenden
  • Sortieren und begrenzen

  • Sortieren:

  • aufsteigend: von niedrig nach hoch, auch der Standardwert, wählen Sie * aus. Tabellenname, Reihenfolge nach Feldname, aufsteigend;

  • absteigend: von hoch nach unten, wählen Sie * aus Reihenfolge der Tabellennamen nach Feldnamen desc;

Mehrere Felder sortieren, Auswahl * aus Tabellennamen, Reihenfolge nach Feldnamen desc,id desc;

Die Zahl 1 gibt an, ab welchem ​​Datensatz der Abruf gestartet werden soll (beginnend bei 0), und Die Zahl 2 gibt an, wie viele Datensätze abgerufen werden sollen!

Aggregation

Benutzer müssen einige Zusammenfassungsvorgänge ausführen, was SQL-Aggregationsvorgänge erfordert.

①sum sum select sum(field name) from table name;

②count total number of Records select count(*|field name) from table name;

③maximaler Wert select max(field name) from table name;

④Mindestwert: Wählen Sie „Min“ (Feldname) aus dem Tabellennamen aus. von der Mitarbeitergruppe nach Abteilung mit Rollup; ⑦HAVING

Hinweis: Der Unterschied zwischen

having und where besteht darin, dass die Ergebnisse nach der Aggregation bedingt gefiltert werden, während die Datensätze vor der Aggregation gefiltert werden. Es sollte genauso genau sein Mögliche Datensätze werden zuerst gefiltert!

select sum(salary) from employee group by department having sum(salary)>1000;
在一起使用:select sum(id),max(id),min(id),count(*) from a1;
Nach dem Login kopieren
Tabellenverbindung (kann verwendet werden, wenn Felder in mehreren Tabellen angezeigt werden)

Verbindungsklassifizierung

Innerer Join:

Übereinstimmende Datensätze in zwei Tabellen auswählen (Tabelle.Feld, ... aus dem Namen von Tabelle 1 auswählen, Name der Tabelle 2,... wobei [Übereinstimmungsbedingungen wie Tabelle 1. Feld = Tabelle 2. Feld];) Die SELECT-Anweisung kann dem Feld einen Alias ​​geben. Schreiben Sie ihn einfach direkt nach dem Feld, das abgefragt werden muss und angezeigt, oder Sie können die Tabelle mit einem Alias ​​versehen

  • 包含左边表中的所有记录(包括右表中没有和它匹配的记录)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);
Nach dem Login kopieren

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

语法:select语句 where exists(select 语句);
Nach dem Login kopieren

not exits(与exists相反)

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

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

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

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

更新记录

更新一个表

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

更新多个表中数据

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

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

推荐学习:php视频教程

 

Das obige ist der detaillierte Inhalt vonWas sind die grundlegenden Wissenspunkte von Datenbanken in PHP? Grundaussage? Grundkonzept?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage