Mysql이 거의 일주일 동안 업데이트되지 않았습니다. 오히려 리눅스에 대해 많이 배웠어요. 아마도 나는 Linux에 감정적으로 더 관심이 있는 것 같습니다. 하지만 mysql은 신경쓰지 않는 편인데, 일단 한 가지 일에 에너지를 쏟으면 다른 일에 에너지를 돌리기가 어렵습니다.
최근에는 공부 계획과 운동 계획도 조정했습니다. 예전에는 퇴근 후 매일 밤 30분에서 1시간 정도 운동을 했는데, 이제는 밤에 일찍 잠자리에 듭니다. 기본적으로 특별한 약속이 없으면 반드시 10시 30분에 잠이 듭니다. 퇴근하고 집에 와서 2~3시간 정도 공부하세요. 운동은 아침에 해야 하는데 어제 해봤는데 아직 아침에 일어날 수 있어요. 5시 30분에 일어나 30분 동안 달리고, 아침시장에 가서 아침을 먹을 시간도 갖는다.
사실 퇴근하고 관심 있는 일을 하지 않으면 하루가 그냥 지나갑니다.
mysql의 이 부분은 사실 매일 연습하다 보면 익숙해지는 부분입니다. 원래는 이 장을 건너뛰고 싶었지만, 나중에 내 지식을 시리즈로 정리하려고 생각했습니다. 앞으로 문제가 발생하여 지식 포인트를 잊어버리더라도 이 노트에서 빠르게 답을 찾고 빠르게 기억할 수 있습니다.
탄탄한 지식 시스템이 매우 중요합니다. 이 좋은 습관을 유지할 수 있었으면 좋겠습니다.
테스트에 사용된 SQL 코드 및 데이터:
#班级表 create table classes( class_no int auto_increment primary key, class_name char(20) not null unique, department_name char(20) not null )engine=innodb default charset=utf8; #下面是一些测试数据: insert into classes(class_name,department_name) values ('英语二班','高一英语二班'), ('英语三班','高一英语三班'), ('英语四班','高一英语四班'), ('英语五班','高一英语五班'), ('英语六班','高一英语六班'), ('数学一班','高一数学一班'), ('数学二班','高一数学二班'), ('数学三班','高一数学三班'), ('数学四班','高一数学四班'), ('数学五班','高一数学五班'), ('数学六班','高一数学六班'), ('语文一班','高一语文一班'), ('语文二班','高一语文二班'), ('语文三班','高一语文三班'), ('语文四班','高一语文四班'), ('语文五班','高一语文五班'), ('语文六班','高一语文六班');
1. 테이블 구조 추가, 삭제, 수정, 삽입
참고: 클래스 테이블은 데모로 사용되었습니다. 여기 베이스. 실제 애플리케이션에서는 이를 자신의 테이블 이름으로 바꿀 수 있습니다.
원래 테이블 구조는 다음과 같습니다.
테이블 구조 및 필드 보기:
desc class;
필드 추가:
use using using using ' 통해 out out through through off - - - - - - 테이블 클래스 변경 add testfield1 varchar(10) not null default ''; 필드 이름:
(작업의 편의를 위해 필드를 다시 추가하십시오. alter table class add testfield1 varchar(10) not null default '';)
alter table class 변경 testfield1 test varchar (10) not null default '';
필드 유형만 수정합니다:
varchar(10) null 기본값이 아님 ''; 차이점은 변경은 대체할 필드의 이름이라는 점입니다. 수정은 필드의 필드 유형만 변경합니다.
사용시 다르게 사용하실 수 있습니다.
2. 테이블 제약조건을 추가, 삭제, 수정, 확인합니다.
작업을 하다 보면 테이블에 제약 조건을 추가하거나 제약 조건을 삭제하는 상황을 자주 접하게 됩니다.
제약 조건 추가: 구문은 다음과 같습니다. alter table 테이블 이름 add 제약 조건 이름 제약 조건 유형(필드 이름) alter 테이블 클래스 추가 제약 조건 myunique Unique(class_no);
제약 조건 삭제:
제약 조건을 삭제하기 전에 테이블 제약 조건에 이미 무엇이 있는지 명확하게 알아야 합니다.
은 show create table 테이블 이름 G를 통해 표시할 수 있습니다. 여기서 G는 그룹을 의미합니다(내 주관적인 추측).
테이블 클래스 생성 표시 G 뒤에는 ; 기호가 없습니다.
제약 조건을 삭제하려면 어떤 제약 조건이 있는지도 알아야 합니다. 제약 조건에는 일반적으로 기본 키 제약 조건(기본 키), 외래 키 제약 조건(외래 키), 고유 인덱스 이름(인덱스)이 포함됩니다. 다음은 외래 키 제약 조건이 무엇인지 간략하게 소개합니다. 먼저 외국이 무엇을 의미하는지 살펴보겠습니다: 외국, 외국. 즉, 이 테이블에 있는 이 필드의 소스는 다른 테이블에서 왔으며 그 값은 5개 중에서 생성될 수 없으며 다른 테이블에서 가져와야 합니다.좀 더 자세한 소개는 다음 글을 참고하세요.
기본 키 삭제 제약 조건:
구문: alter table table name 기본 키 삭제.
Chestnut: alter table 클래스는 기본 키 삭제.
외부 삭제 키 제약 조건:
테이블은 하나의 기본 키를 가질 수 있지만 외래 키는 여러 개 가질 수 있습니다. 따라서 외래키를 삭제할 때에는 당시 외래키에 부여된 이름, 즉 제약조건명을 삭제해야 한다.
구문: aleter 테이블 테이블 이름 drop 외래 키 제약 조건 이름
고유 제약 조건 삭제:
고유 제약 사항은 무엇입니까? 예를 들어 우리 ID 카드 번호는 중복되지 않으므로 ID 카드를 입력하는 과정에서 실수로 인해 ID 번호가 중복되는 것을 방지합니다. 이것이 유일한 제약입니다. unqiue (독특한, 독특한, 희귀한). 물론 테이블에는 여러 고유 제약 조건이 있을 수도 있습니다. 예를 들어 사용자 테이블에는 ID 번호와 전화 번호가 모두 있을 수 있습니다. 그런 다음 삭제할 때 제약 조건 이름도 삭제해야 합니다.
구문: alter table table name drop 인덱스 제약 조건 이름.
테이블 클래스 변경 시 class_name 인덱스 삭제;
스토리지 엔진 유형 수정, 문자 집합 수정, 자동 증가 초기 값 수정 등 테이블 수정을 위한 기타 옵션이 있습니다.
스토리지 엔진 수정: 테이블 이름 엔진=새 스토리지 엔진;
문자 집합 수정: 테이블 테이블 이름 charset=새 문자 집합
자동 증가 수정; 초기 테스트 값: alter table table name auto_increment=newinitial value;
3. 테이블 이름 수정 및 삭제
테이블 이름 수정은 매우 간단하지만 나는 종종 사용했다.
프로젝트 준비 단계 및 데이터베이스 설계 단계에서. 테이블 이름을 이해하기 쉽게 만들기 위해서는 최대한 사용자 친화적으로 디자인해야 하므로 테이블 이름 수정은 불가피합니다.
테이블 이름 수정:
테이블 테이블 이름 변경 새 테이블 이름을 변경합니다.
여기서는 테이블 이름 수정과 필드 이름 수정의 차이점을 구분합니다. 테이블 이름 변경 원래 필드 새 필드 제약 조건 변경
그런데 변경은 데이터 구조가 다음과 같다는 점을 강조합니다. 변경, 변경은 테이블 이름이 변경되었으나 데이터 자체는 변경되지 않음을 강조합니다. 따라서 외국인의 작명은 여전히 엄격히 금지되어 있음을 알 수 있다.
테이블 이름 삭제:
테이블 테이블 이름을 변경합니다.
테이블을 삭제할 때. 테이블에 외래 키가 있으면 오류가 보고됩니다. 왜? 여러분, 생각해 보세요.
물론 테이블을 삭제해도 myisam 스토리지 엔진에 오류가 보고되지는 않습니다. 왜 이런가요?
위 내용은 테이블 구조 추가, 삭제, 수정, 확인에 대한 Mysql 학습노트(2) 내용입니다. 자세한 내용은 PHP 중국어 홈페이지(www.php.cn)를 참고하시기 바랍니다. !