MySQL 터미널 관리 데이터베이스 운영 가이드

黄舟
풀어 주다: 2017-02-23 11:00:08
원래의
1101명이 탐색했습니다.



MySQL에는 "mysql-workbench" 및 "sequel-pro-"와 같은 다양한 시각적 관리 도구가 있습니다. 이제 나는 MySQL에 대한 이해를 강화하기 위해 MySQL 터미널 명령 작업에 대한 기사를 작성합니다. 왜냐하면 나는 코드 작성을 선호하기 때문에 항상 그래픽 방법을 사용하는 것보다 더 철저할 것입니다. 동시에 나는 모든 사람에게 참고 자료로 제공하기 위해 이 기사를 작성합니다. 이것이 모든 사람에게 도움이 되고 개선될 수 있기를 바랍니다. 이것이 제가 MySQL의 터미널 작동에 대한 기사를 쓰고 싶은 이유입니다.

참고: MySQL 데이터베이스 명령은 대소문자를 구분하지 않습니다. 그러나 MAC 터미널에서 탭을 사용하여 자동으로 명령을 완성하려면 대문자를 사용해야 합니다. 그러면 MAC 터미널이 명령을 완성합니다. 그렇지 않으면 탭을 N 번 눌러도 응답이 없습니다.

1. 데이터베이스 관리

1.1 create 데이터베이스 생성


create database firstDB;
로그인 후 복사


1.2 모든 데이터베이스 보기


mysql> show databases;

+--------------------+
| Database           |
+--------------------+
| information_schema |
| firstDB            |
| mysql              |
| performance_schema |
+--------------------+
4 rows in set (0.00 sec)
로그인 후 복사


1.3 데이터베이스 수정

alter 명령은 데이터베이스 인코딩을 수정합니다.

기본적으로 생성된 데이터베이스는 기본적으로 중국어 문자를 지원하지 않습니다. 중국어 문자를 지원해야 하는 경우 인코딩을 utf8 형식으로 설정합니다.


mysql> ALTER DATABASE testDB CHARACTER SET UTF8;
Query OK, 1 row affected (0.00 sec)
로그인 후 복사


1.4 데이터베이스 사용


mysql> use firstDB;
Database changed
로그인 후 복사


1.5 현재 사용 중인 데이터베이스 보기


mysql> select database();
+------------+
| database() |
+------------+
| firstdb    |
+------------+
1 row in set (0.00 sec)
로그인 후 복사


1.6 데이터베이스 삭제 삭제


mysql> drop database firstDB;
Query OK, 0 rows affected (0.00 sec)
로그인 후 복사


2. 데이터 테이블 관리

먼저 데이터베이스를 생성하고, 나중에 사용하려면:


mysql> create database testDB;
Query OK, 1 row affected (0.00 sec)
로그인 후 복사


만든 후에는 use 명령을 사용하여 데이터베이스를 입력(사용)해야 합니다. 그렇지 않으면 따르지 마십시오. 모든 작업이 실패합니다.

2.1 create 테이블 생성


mysql> create table PEOPLE (
    -> ID int AUTO_INCREMENT PRIMARY KEY,
    -> NAME varchar(20) not null,
    -> AGE int not null,
    -> BIRTHDAY datetime);                                                     
Query OK, 0 rows affected (0.01 sec)
로그인 후 복사


2.2 디스플레이 테이블 표시

현재 데이터베이스의 모든 데이터 테이블 표시


mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| PEOPLE           |
+------------------+
1 row in set (0.00 sec)
로그인 후 복사


2.3 desc 테이블 구조 보기


mysql> desc PEOPLE
    -> ;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.01 sec)
로그인 후 복사


2.4 alter 테이블 구조 수정(추가, 삭제, 변경)

기본값 생성된 테이블은 한자를 지원하지 않으므로 테이블 인코딩을 utf8로 설정해야 합니다:


mysql> ALTER TABLE KEYCHAIN CONVERT TO CHARACTER SET UTF8;
Query OK, 1 row affected (0.02 sec)
Records: 1  Duplicates: 0  Warnings: 0
로그인 후 복사


2.4 .1 테이블에 열(필드) 추가


mysql> alter table PEOPLE add star BOOL;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
로그인 후 복사


에 삽입 팁: MySQL에서 부울 유형은 다음과 같습니다. 자동으로 Tinyint(1 ) 유형으로 변환됩니다.

desc를 사용하여 PEOPLE 테이블 구조를 확인할 수도 있습니다.


mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | tinyint(1)  | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
로그인 후 복사


이제 제 말을 믿으세요. ?

2.4.2 alter 수정 테이블(열) 필드


mysql> alter table PEOPLE MODIFY star int;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0
로그인 후 복사


사용합니다 다시 desc PEOPLE 테이블 구조 보기:


mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
| star     | int(11)     | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
5 rows in set (0.00 sec)
로그인 후 복사


2.4.3 delete 테이블(열) 필드 삭제


mysql> alter table PEOPLE DROP column star;
Query OK, 0 rows affected (0.02 sec)
Records: 0  Duplicates: 0  Warnings: 0
로그인 후 복사


삭제 후 PEOPLE 테이블 구조를 다시 봅니다.


mysql> desc PEOPLE;
+----------+-------------+------+-----+---------+----------------+
| Field    | Type        | Null | Key | Default | Extra          |
+----------+-------------+------+-----+---------+----------------+
| ID       | int(11)     | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(20) | NO   |     | NULL    |                |
| AGE      | int(11)     | NO   |     | NULL    |                |
| BIRTHDAY | datetime    | YES  |     | NULL    |                |
+----------+-------------+------+-----+---------+----------------+
4 rows in set (0.00 sec)
로그인 후 복사


필드가 성공적으로 삭제되었습니다. 이제 더 이상 별 필드를 볼 수 없습니다.

2.4.4 rename rename 테이블 이름


mysql> RENAME TABLE PEOPLE TO NEW_PEOPLE;
Query OK, 0 rows affected (0.00 sec)
로그인 후 복사


2.5 create 생성 기존 데이터를 이용한 새 테이블


mysql> create table newTable select * from PEOPLE;
Query OK, 0 rows affected (0.01 sec)
Records: 0  Duplicates: 0  Warnings: 0
로그인 후 복사


현재 데이터베이스에 존재하는 테이블을 확인해 보겠습니다.


rree


3. 데이터 운영 및 관리

데이터 추가, 삭제, 수정, 조회 등 데이터 테이블의 기본 작업입니다.

다음 명령은 모두 PEOPLE 테이블에서 작동합니다.

3.1 데이터 추가(증가)

현재 PEOPLE 테이블에는 데이터가 없습니다. 이제 데이터를 추가해 보겠습니다.

데이터를 추가하는 명령에 삽입:


mysql> show tables;
+------------------+
| Tables_in_testdb |
+------------------+
| PEOPLE           |
| newTable         |
+------------------+
2 rows in set (0.00 sec)
로그인 후 복사


테이블을 보려면 선택 명령을 사용하세요(소개될 예정임) 나중에), 이제 PEOPLE 데이터 테이블의 데이터를 확인해 보겠습니다.


mysql> insert into PEOPLE VALUES (null, 'Anny', 22, '1992-05-22');
Query OK, 1 row affected (0.00 sec)
로그인 후 복사


이제 데이터 테이블에 데이터 조각이 있습니다.

다음과 같은 몇 가지 데이터를 추가해 보겠습니다.


mysql> select * from PEOPLE;
+----+------+-----+---------------------+
| ID | NAME | AGE | BIRTHDAY            |
+----+------+-----+---------------------+
|  1 | Anny |  22 | 1992-05-22 00:00:00 |
+----+------+-----+---------------------+
1 row in set (0.00 sec)
로그인 후 복사


3.2 데이터 삭제( 삭제)

데이터 삭제 명령 삭제:


mysql> select * from PEOPLE;
+----+--------+-----+---------------------+
| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+
|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  3 | Lisa   |  25 | 1989-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+
5 rows in set (0.00 sec)
로그인 후 복사


PEOPLE 테이블 다시 쿼리:


mysql> delete from PEOPLE where name = 'Lisa';
Query OK, 1 row affected (0.01 sec)
로그인 후 복사


"Lisa"라는 이름의 데이터가 더 이상 표시되지 않습니다.

3.3 데이터 수정(변경)

데이터 수정을 위한 업데이트 명령:


mysql> select * from PEOPLE;
+----+--------+-----+---------------------+
| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+
|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Garvey |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+
4 rows in set (0.00 sec)
로그인 후 복사


PEOPLE 테이블의 내용 쿼리:


mysql> update PEOPLE set name='Calvin' where name = 'Garvey';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0
로그인 후 복사


"Garvey"라는 레코드가 "Calvin"으로 수정되었습니다. ".

3.4 데이터 쿼리(확인)

데이터를 쿼리하는 select 명령 가장 간단한 것은 테이블의 모든 데이터를 쿼리하는 것인데, 이는 처음에 사용한 명령입니다.


mysql> select * from PEOPLE;
+----+--------+-----+---------------------+
| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+
|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+
4 rows in set (0.00 sec)
로그인 후 복사
로그인 후 복사


형식: <테이블 이름>에서 *를 선택하고, *는 모든 필드를 나타냅니다.

데이터를 쿼리할 때 표시되는(열) 필드를 지정할 수도 있습니다.


mysql> select * from PEOPLE;
+----+--------+-----+---------------------+
| ID | NAME   | AGE | BIRTHDAY            |
+----+--------+-----+---------------------+
|  1 | Anny   |  22 | 1992-05-22 00:00:00 |
|  2 | Calvin |  23 | 1991-05-22 00:00:00 |
|  4 | Nick   |  24 | 1990-05-22 00:00:00 |
|  5 | Rick   |  24 | 1991-05-22 00:00:00 |
+----+--------+-----+---------------------+
4 rows in set (0.00 sec)
로그인 후 복사
로그인 후 복사


형식: < <테이블 이름>에서 필드 이름, 필드 이름...>

select query 명령에는 고유한 데이터 찾기(distinct), 조건별 데이터 정렬(order by), 쿼리 조건에 따른 데이터 표시(where) 등 다양한 고급 용도도 있습니다. 이 내용은 다음 기사에서 강조하겠습니다. 계속해서 제 블로그에 관심을 가져주세요.

위 내용은 MySQL 터미널 관리 데이터베이스 운영 가이드 내용입니다. 더 많은 관련 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고해주세요!


관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!