>  기사  >  데이터 베이스  >  MySQL에서 다음과 같이 생성과 다음과 같이 생성의 차이점은 무엇입니까? (비교 소개)

MySQL에서 다음과 같이 생성과 다음과 같이 생성의 차이점은 무엇입니까? (비교 소개)

不言
不言앞으로
2019-02-14 11:52:374293검색

이 글의 내용은 MySQL에서 create as와 create like의 차이점에 관한 것입니다. (비교 소개)에는 특정 참고 가치가 있습니다. 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.

테이블이나 데이터 구조를 복사하는 등 Navicat Premium을 사용할 때 매우 편리할 수 있습니다. 실제로 테이블 데이터나 구조를 복사하는 방법은 테이블을 생성하는 것과 테이블을 생성하는 것의 차이점이 무엇인지 물을 것입니다. ? . . . 더 이상 고민하지 않고 곧바로 요점으로 들어가겠습니다.

(추천 과정:

MySQL Tutorial

) 예를 들어, 다음은 테이블 데이터 t1입니다.

DROP TABLE IF EXISTS `t1`;
CREATE TABLE `t1`  (
  `id` int(10) UNSIGNED NOT NULL AUTO_INCREMENT COMMENT 'ID,自增',
  `uid` bigint(11) UNSIGNED NOT NULL DEFAULT 0 COMMENT '用户uid',
  `nickname` varchar(25) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL COMMENT '昵称',
  `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL DEFAULT '' COMMENT '用户名',
  PRIMARY KEY (`id`) USING BTREE,
  INDEX `unn`(`uid`, `name`, `nickname`) USING BTREE
) ENGINE = InnoDB AUTO_INCREMENT = 5 CHARACTER SET = utf8 COLLATE = utf8_general_ci  ROW_FORMAT = Compact;

-- ----------------------------
-- Records of t1
-- ----------------------------
INSERT INTO `t1` VALUES (3, 100, 'kaven', 'test3');
INSERT INTO `t1` VALUES (2, 101, 'maha', 'test2');
INSERT INTO `t1` VALUES (4, 102, 'loose', 'test4');
INSERT INTO `t1` VALUES (5, 105, 'balala', 'test5');

인덱스가 있다는 점에 유의하세요.


Create As Copy Table

create table t1_copy as select * from t1 where 1=2# 或者 create table t1_copy as select * from t1 limit 0
여기서는 테이블 구조만 필요하므로 위의 1=2 또는 lmit 0은 빈 데이터를 쿼리합니다. 새 테이블 t1_copy에는 인덱스가 없음을 알 수 있습니다.


에는 t1 테이블(소스 테이블)의 인덱스 정보가 부족하고 동일한 테이블 구조만 있습니다. (데이터를 복사하려면 제한 0을 제거하면 됩니다. 즉, 쿼리된 데이터를 모두 복사합니다.)

Create like copy table

create table t1_copy2 like t1

like가 생성한 새 테이블에 다음이 포함되어 있음을 발견했습니다. 완전한 소스 테이블 테이블 구조 및 인덱스 정보.

요약

: as는 동일한 테이블 구조를 생성하고 원본 테이블 데이터를 복사하는 데 사용됩니다.

like는 완전한 테이블 구조와 모든 인덱스를 만드는 데 사용됩니다.

참고: 두 가지 방법은 테이블을 복사할 때 테이블의 권한 설정을 복사하지 않습니다. 예를 들어 원래 테이블 A에 권한이 설정된 경우 테이블 AA를 복사한 후 테이블 AA에는 테이블 A와 유사한 권한이 없습니다. 관심있는 친구들은 한번 해보세요

위 내용은 MySQL에서 다음과 같이 생성과 다음과 같이 생성의 차이점은 무엇입니까? (비교 소개)의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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