>데이터 베이스 >MySQL 튜토리얼 >MySQL 데이터 삽입, 업데이트, 삭제 연습

MySQL 데이터 삽입, 업데이트, 삭제 연습

coldplay.xixi
coldplay.xixi앞으로
2021-03-22 09:12:102711검색

MySQL 데이터 삽입, 업데이트, 삭제 연습

사례: 테이블 북 생성, 데이터 삽입, 업데이트 및 삭제, 데이터 테이블의 기본 작업을 마스터하세요. books 테이블의 구조와 테이블에 포함된 레코드는 다음과 같습니다.
MySQL 데이터 삽입, 업데이트, 삭제 연습
케이스 연산 과정:
(1) 표 8.1의 구조에 따라 데이터 테이블 books를 생성하고 각 필드를 정의합니다.
(2) 표 8.2의 레코드를 books 테이블에 삽입합니다. 다양한 방법을 사용하여 레코드를 삽입하세요.
(3) 소설류 도서 가격을 5 인상합니다.
(4) EmmaT라는 책의 가격을 40으로 변경하고, 노트 설명을 드라마로 변경합니다.
(5) 인벤토리가 0인 기록을 삭제합니다.

(무료 학습 추천: mysql 동영상 튜토리얼)


(1), 데이터 테이블북을 생성하고 표 8.1에 표시된 구조에 따라 각 필드를 정의합니다.
mysql> create table books    -> (
    -> id int(11) not null auto_increment primary key,
    -> name varchar(50) not null,
    -> authors varchar(100) not null,
    -> price float not null,
    -> pubdate year not null,
    -> discount float(3,2) not null,
    -> note varchar(255) null,
    -> num int(11) not null default 0
    -> );Query OK, 0 rows affected (0.05 sec)mysql> select * from books;Empty set (0.05 sec)

테이블이 비어 있는 것을 볼 수 있습니다. 다음으로 테이블에 레코드를 삽입합니다.

(2) 표 8.2의 레코드를 books 테이블에 삽입합니다. 다양한 방법을 사용하여 레코드를 삽입하세요.

①모든 필드 이름을 지정하여 레코드를 삽입합니다. SQL 문은 다음과 같습니다.

mysql> insert into books    -> (id,name,authors,price,pubdate,discount,note,num)
    -> values(1,'Tale of AAA','Dicks',23,'1995',0.85,'novel',11);Query OK, 1 row affected (0.05 sec)

②필드 이름을 지정하지 않고 레코드를 삽입합니다. SQL 문은 다음과 같습니다.

mysql> insert into books    -> values(2,'EmmaT','Jane lura',35,'1993',0.70,'joke',22);Query OK, 1 row affected (0.05 sec)mysql> select * from books;+----+-------------+-----------+-------+---------+----------+-------+-----+| id | name        | authors   | price | pubdate | discount | note  | num |+----+-------------+-----------+-------+---------+----------+-------+-----+|  1 | Tale of AAA | Dicks    |    23 |    1995 |     0.85 | novel |  11 ||  2 | EmmaT       | Jane lura |    35 |    1993 |     0.70 | joke  |  22 |+----+-------------+-----------+-------+---------+----------+-------+-----+2 rows in set (0.00 sec)

③여러 레코드를 동시에 삽입

mysql> insert into books    -> values(3,'Story of Jane','Jane Tim',40,'2001',0.81,'novel',0),
    -> (4,'Lovey Day','George Byron',20,'2005',0.85,'novel',30),
    -> (5,'Old Land','Honore Blade',30,'2010',0.60,'law',0),
    -> (6,'The Battle','Upton Sara',33,'1999',0.65,'medicine',40),
    -> (7,'Rose Hood','Richard Kale',28,'2008',0.90,'cartoon',28);Query OK, 5 rows affected (0.05 sec)Records: 5  Duplicates: 0  Warnings: 0mysql> select * from books;+----+---------------+--------------+-------+---------+----------+----------+-----+| id | name          | authors      | price | pubdate | discount | note     | num |+----+---------------+--------------+-------+---------+----------+----------+-----+|  1 | Tale of AAA   | Dicks       |    23 |    1995 |     0.85 | novel    |  11 ||  2 | EmmaT         | Jane lura    |    35 |    1993 |     0.70 | joke     |  22 ||  3 | Story of Jane | Jane Tim     |    40 |    2001 |     0.81 | novel    |   0 ||  4 | Lovey Day     | George Byron |    20 |    2005 |     0.85 | novel    |  30 ||  5 | Old Land      | Honore Blade |    30 |    2010 |     0.60 | law      |   0 ||  6 | The Battle    | Upton Sara   |    33 |    1999 |     0.65 | medicine |  40 ||  7 | Rose Hood     | Richard Kale |    28 |    2008 |     0.90 | cartoon  |  28 |+----+---------------+--------------+-------+---------+----------+----------+-----+7 rows in set (0.00 sec)
(3) , 소설 종류 변경(소설)의 도서 가격이 5 인상됩니다.
mysql> update books    -> set price = price +5
    -> where note = 'novel';Query OK, 3 rows affected (0.05 sec)Rows matched: 3  Changed: 3  Warnings: 0mysql> select id,name,price,note    -> from books    -> where note = 'novel';+----+---------------+-------+-------+| id | name          | price | note  |+----+---------------+-------+-------+|  1 | Tale of AAA   |    28 | novel ||  3 | Story of Jane |    45 | novel ||  4 | Lovey Day     |    25 | novel |+----+---------------+-------+-------+3 rows in set (0.00 sec)
(4) EmmaT라는 책의 가격을 40으로 변경하고 메모 설명을 드라마로 변경합니다.
mysql> update books    -> set price=40,note='drama'
    -> where name = 'EmmaT';Query OK, 1 row affected (0.05 sec)Rows matched: 1  Changed: 1  Warnings: 0mysql> select name,price,note    -> from books    -> where name= 'EmmaT';+-------+-------+-------+| name  | price | note  |+-------+-------+-------+| EmmaT |    40 | drama |+-------+-------+-------+1 row in set (0.00 sec)
(5), 인벤토리가 0인 기록을 삭제하세요.
mysql> delete
    -> from books    -> where num = 0;Query OK, 2 rows affected (0.05 sec)mysql> select *
    -> from books    -> where num = 0;Empty set (0.00 sec)

몇가지 질문

1. 레코드 삽입 시 필드명을 지정할 수 없나요?

  • 어떤 삽입 구문을 사용해도 올바른 개수의 값을 제공해야 합니다. 필드 이름을 제공하지 않으면 각 필드에 값을 제공해야 합니다. 그렇지 않으면 오류 메시지가 생성됩니다.
  • 삽입 작업에서 특정 필드를 생략하려면 해당 필드가 특정 조건을 충족해야 합니다. 열은 null 값을 허용하도록 정의되거나 테이블이 정의될 때 기본값이 제공됩니다. 사용됩니다.

2. 테이블을 업데이트하거나 삭제할 때 where 절을 지정해야 하나요?

  • 모든 업데이트 및 삭제 문은 where 절에 조건을 지정합니다. where 절을 생략하면 테이블의 모든 행에 업데이트 또는 삭제가 적용됩니다. 따라서 실제로 모든 레코드를 업데이트하거나 삭제하려는 의도가 아니라면 where 절 없이 업데이트 또는 삭제 문을 사용할 때 주의하세요.
  • 돌이킬 수 없는 결과를 방지하려면 테이블을 업데이트하고 삭제하기 전에 삭제해야 할 레코드를 선택 문을 사용하여 확인하는 것이 좋습니다.

관련 무료 학습 권장 사항: mysql 데이터베이스(동영상)

위 내용은 MySQL 데이터 삽입, 업데이트, 삭제 연습의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 csdn.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제