MySQL에는 "mysql-workbench" 및 "sequel-pro-"와 같은 다양한 시각적 관리 도구가 있습니다. 이제 나는 MySQL에 대한 이해를 강화하기 위해 MySQL 터미널 명령 작업에 대한 기사를 작성합니다. 왜냐하면 나는 코드 작성을 선호하기 때문에 항상 그래픽 방법을 사용하는 것보다 더 철저할 것입니다. 동시에 나는 모든 사람에게 참고 자료로 제공하기 위해 이 기사를 작성합니다. 이것이 모든 사람에게 도움이 되고 개선될 수 있기를 바랍니다. 이것이 제가 MySQL의 터미널 작동에 대한 기사를 쓰고 싶은 이유입니다.
참고: MySQL 데이터베이스 명령은 대소문자를 구분하지 않습니다. 그러나 MAC 터미널에서 탭을 사용하여 자동으로 명령을 완성하려면 대문자를 사용해야 합니다. 그러면 MAC 터미널이 명령을 완성합니다. 그렇지 않으면 탭을 N 번 눌러도 응답이 없습니다.
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)
먼저 데이터베이스를 생성하고, 나중에 사용하려면:
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
현재 데이터베이스에 존재하는 테이블을 확인해 보겠습니다.
데이터 추가, 삭제, 수정, 조회 등 데이터 테이블의 기본 작업입니다.
다음 명령은 모두 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)를 참고해주세요!