Operación de la base de datos DB de Laravel

1. Base de datos de operaciones de la base de datos (énfasis)

De acuerdo con la arquitectura MVC, la operación de los datos debe realizarse en el Modelo, pero si no usamos el Modelo, también podemos usar la clase DB proporcionada por el framework laravel para operar la base de datos, y para algunos SQL extremadamente complejos. , es difícil usar el modelo Para completar, el desarrollador necesita escribir la declaración SQL por sí mismo y usar la clase DB para ejecutar el SQL nativo. El uso básico de la clase DB en laravel DB::table['tableName']obtiene tableNamela instancia (objeto) de la tabla de operaciones .

1.1, la creación y configuración de la tabla de datos

Formas de generar datos:

  1. declaración sql
  2. Interfaz gráfica phpMyAdmin Navicat

Crear una base de datos:
Inserte la descripción de la imagen aquí
crear una tabla:

create table member(
	id int primary key auto_increment,
	name varchar(32) not null,
	age tinyint unsigned not null,
	email varchar(32) not null
) engine myisam charset utf8;

Inserte la descripción de la imagen aquí


1.2, la configuración de la base de datos en el marco de laravel

En el .envarchivo

También se puede configurar en el archivo database.php en el directorio de configuración. Usar la función env significa obtenerlo del archivo env primero, si tiene éxito, utilícelo, si falla, use el segundo parámetro de la función env.

1.3. Introducir la fachada DB en el controlador de prueba

Inserte la descripción de la imagen aquí

Inserte la descripción de la imagen aquí

1.3.1. Definir las rutas necesarias para agregar, eliminar, modificar y verificar:

Aumentar: / agregar
eliminar: / del
modificar: / mod
query: / select

Inserte la descripción de la imagen aquí
1. Agregar información (insertar)
Hay dos funciones principales para agregar datos a una tabla en la base de datos, que son insert()yinsertGetId()

insertar (matriz) puede agregar uno o más al mismo tiempo, el valor de retorno es de tipo booleano.
insertGetId (matriz unidimensional), solo se puede agregar una pieza de datos y se devuelve la identificación que aumenta automáticamente.

Gramática: DB::table('表名')->insert();operación coherente / operación en cadena
Ejemplo:
Inserte la descripción de la imagen aquí
Efecto:
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí


2. Modificar los datos (actualizar)
La modificación de datos se puede implementar usando los métodos de actualización (), incremento () y decremento ().

El método de actualización significa que se pueden modificar todos los campos de todo el registro
Incrementar y disminuir significa modificar el valor de un campo numérico (incrementar o disminuir) Aplicaciones típicas: registrar el número de inicios de sesión y aumentar los puntos;

donde () -> actualizar ([])
Nota: donde () -> donde () -> donde () ... Esta sintaxis es y (y) sintaxis relacional.
where () -> orWhere () -> orWhere () ... Esta gramática es una gramática o (o) relacional.
Los parámetros del método orWhere son los mismos que where.
Donde orden del parámetro:
donde (nombre del campo, operador, valor del campo). Por ejemplo, si id = 1, puede escribir: where ('id', '=', 1), abreviado como Where ('id', '1'); [solo = se puede abreviar]

Ejemplo: cambie el nombre del nombre con id = 1 a 'lisi' (el valor de retorno indica el número de filas afectadas):
Inserte la descripción de la imagen aquí
Efecto:
Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí


Ejemplo: agregue 10 al valor del campo de edad del usuario con id = 1

DB :: table ('miembro') -> donde ('id', '=', 1) -> incremento ('edad'); 每次 +1
DB :: table ('miembro') -> donde ('id', '=', 1) -> incremento ('edad', 5); 每次 +5
DB :: table ('miembro') -> donde ('id', '=', 1) -> decremento ('edad'); 每次 -1
DB :: table ('miembro') -> donde ('id', '=', 1) -> decremento ('edad', 5); 每次 -5

3. Consultar datos (obtener)
(1) Sacar los datos básicos
Ejemplo: Obtener todos los datos de la tabla de miembros
DB::table('member') -> get(); // 相当于select * from member; el
valor de retorno es un objeto de colección, el
Inserte la descripción de la imagen aquí
efecto:
Inserte la descripción de la imagen aquí


Ejemplo: saque los datos
Inserte la descripción de la imagen aquí
con id menor que 3 Efecto:
Inserte la descripción de la imagen aquí


Ejemplo: Pregunta id> 2 y edad <25 datos de
instrucción SQL nativo: select * from member where id > 2 and age <25;
declaración laravel:
Inserte la descripción de la imagen aquí
Efecto:
Inserte la descripción de la imagen aquí


(2) Saque una sola fila de datos. El
DB::table('member') -> where('id', '1') -> first()valor de retorno es un objeto.
El primer método es equivalente al límite 1

Nota: la diferencia entre first y get, el valor devuelto de first es un objeto, e incluso si get tiene solo 1 registro, también es un conjunto de resultados de recopilación.
Escenario de resumen:
use el primer escenario:
use el primer escenario: verificación de inicio de sesión, detalles page, Modificar funciones, etc.
Escenarios donde se usa get: páginas de lista, interfaces de diseño, etc.

Ejemplo:
Inserte la descripción de la imagen aquí
Efecto:
Inserte la descripción de la imagen aquí


(3) Obtener un valor específico (un campo)
DB::table('member') -> where('id', '1') -> value('name');
Ejemplo: consultar el nombre del usuario cuya identificación es 1 (solo quiero el nombre)
Inserte la descripción de la imagen aquí
Efecto:
Inserte la descripción de la imagen aquí


(4) Obtenga algunos datos de campo (varios campos)

$users = DB::table('member') -> select('name', 'email') -> get();
$users = DB::table('member') -> select('name as user_name') -> get();
$users = DB::table('member') ->  select(DB::raw('name, age')) -> get(); // 不解析字段,原样使用。

Ejemplo: obtenga el campo de nombre y correo electrónico en el registro con id> 2. SQL nativo: select name, email from member where id > 2;
Inserte la descripción de la imagen aquí
efecto:
Inserte la descripción de la imagen aquí


(5) Operación de clasificación
DB::table('member') -> orderBy('age', 'desc') -> get();
sintaxis: orderBy (campo de clasificación, regla de clasificación). desc orden descendente, asc orden ascendente
Ejemplo: Consulte la lista y se requiere ordenar en orden descendente según el campo de edad.

Inserte la descripción de la imagen aquí
efecto:
Inserte la descripción de la imagen aquí


(6) una operación de paginación
DB::table('member') -> limit(3) -> offset(2) -> get();
limit: representa el número de límite de salida (el número de registros por ficha)
offset: dónde empezar
Ejemplo:
Inserte la descripción de la imagen aquí
efectos:
Inserte la descripción de la imagen aquí
(7) de datos BORRAR (DELETE)
en la deleción de dos maneras: suprimido físicamente (La esencia es eliminar), la eliminación lógica (la esencia es modificar)
la eliminación de datos se puede lograr a través de la función de eliminación y la función de truncar.

eliminar significa eliminar registros,
truncar significa vaciar toda la tabla de datos;

DB::table('member') -> where('id', '1') -> delete();

Inserte la descripción de la imagen aquí
efecto:
Inserte la descripción de la imagen aquí


(8) Ejecute cualquier instrucción SQl

1. Ejecute declaraciones de consulta nativas
DB::select('select 语句');

2. Ejecute declaraciones de inserción nativas
DB::insert('insert 语句');

3. Ejecutar declaración de modificación nativa
DB::update('update 语句')

4. Ejecute la declaración de eliminación nativa
DB::delete('delete 语句');

5. Ejecute una declaración general (declaración sin valor de retorno, como crear tabla, etc.)
DB :: declaración ('declaración')

En el camino de aprender php, si crees que este artículo es útil para ti, por favor presta atención a Me gusta y comenta Sanlian, gracias, debes ser otro soporte para mi blog.

Supongo que te gusta

Origin blog.csdn.net/weixin_44103733/article/details/113770792
Recomendado
Clasificación