찾다
데이터 베이스MySQL 튜토리얼mysql 테이블의 기본 동작 요약(3)_MySQL

mysql 테이블의 기본 동작, 세부 내용은 다음과 같습니다

1. 테이블 만들기:
테이블 생성 구문:

CREATE TABLE table_name(
 属性名 数据类型,
 属性名 数据类型,
 ...
 属性名 数据类型
)

예:

CREATE TABLE t_dept(
 deptno int,
 dname varchar(20),
 loc varchar(20)

참고: 테이블을 생성하기 전에 일반적으로 USE 라이브러리 이름을 사용해야 합니다. 이러한 문은 라이브러리를 선택하고 선택한 라이브러리에 테이블을 생성합니다. 테이블 이름 식별자의 경우 CREATE, USE 등과 같은 mysql 키워드가 될 수 없습니다. 테이블 이름 식별자는 t_xxx 또는 tab_xxx를 사용하는 것이 좋습니다. 각 속성은 쉼표로 구분되며 뒤에는 쉼표를 사용할 필요가 없습니다. 마지막 속성.

2. 테이블 구조 보기:
2.1 테이블 정의를 보기 위한 DESCRIBE 문
라이브러리 이름 사용 //라이브러리 선택
DESCRIBE 테이블 이름; //테이블의 정의 정보를 봅니다. DESCRIBE는 DESC
로 대체 가능합니다. 2.2 테이블의 상세 정의를 보기 위한 SHOW CREATE TABLE 문
라이브러리 이름 사용 //라이브러리 선택
SHOW CREATE TABLE 테이블 이름 G 테이블 이름; //테이블 정의 정보 보기
비고: 테이블의 세부 정의 정보를 표시할 때 ";" "g" "G" 기호를 사용하여 결과를 더욱 아름답게 표시하고 사용자가 보기 쉽게 하려면 G를 사용하는 것이 가장 좋습니다. 끝까지.

3. 테이블 삭제:
테이블 삭제 구문 형식:
USE 라이브러리 이름; //라이브러리 선택
DROP TABLE 테이블 이름; //지정된 테이블 이름을 가진 테이블을 삭제합니다

4. 테이블 수정:
4.1 테이블 이름 수정
생성된 테이블은 일정 기간 사용 후 일부 구조적 수정, 즉 테이블 수정 작업이 필요합니다. 테이블을 직접 삭제하고 새 테이블 정의에 따라 테이블을 생성하면 어떨까요? 그 이유는 테이블에 이미 많은 양의 데이터가 존재하는 경우 재구성 후에 데이터를 다시 로드하는 등 많은 추가 작업이 필요하기 때문입니다. 위의 문제를 해결하기 위해 mysql은 테이블 구조를 수정하는 ALTER TABLE 문을 제공합니다.
테이블 이름 구문을 수정합니다. ALTER TABLE old_table_name REANME [TO] new_table_name
4.2 필드 추가
4.2.1 테이블 마지막 위치에 필드 추가
구문은 다음과 같습니다. ALTER TABLE table_name ADD 속성 이름 속성 유형
4.2.2 테이블의 첫 번째 위치에 필드 추가
구문은 다음과 같습니다. ALTER TABLE table_name ADD 속성 이름 속성 유형 FIRST; 4.2.3 테이블의 지정된 필드 뒤에 필드 추가
구문은 다음과 같습니다. ALTER TABLE table_name ADD 속성 이름 속성 유형 AFTER 속성 이름

4.3 필드 삭제
필드 삭제 구문: ALTER TABLE table_name DROP 속성 이름

4.4 필드 수정(데이터 유형 수정 및 순서는 MODIFY여야 함, 이름 또는 이름 수정, 속성은 CHANGE여야 함)
4.4.1 필드의 데이터 유형 수정
구문은 다음과 같습니다. ALTER TABLE table_name MODIFY 속성 이름 데이터 유형; //데이터 유형은 수정된 데이터 유형입니다.
4.4.2 필드명 수정
구문은 다음과 같습니다. ALTER TABLE table_name CHANGE 이전 속성 이름 새 속성 이름 이전 데이터 유형
4.4.3 필드 이름과 속성을 동시에 수정
구문은 다음과 같습니다. ALTER TABLE table_name CHANGE 이전 속성 이름 새 속성 이름 새 데이터 유형
4.4.4 필드 순서 수정
구문은 다음과 같습니다. ALTER TABLE table_name MODIFY 속성 이름 1 데이터 유형 FIRTST | AFTER 속성 이름 2; //"속성 이름 1" 매개변수는 필드 이름을 순서대로 조정함을 나타내고, "FITST" 매개변수는 필드를 테이블의 첫 번째 위치로 조정함을 나타내며, "AFTER 속성 이름 2"는 필드를 속성 뒤의 위치로 조정함을 나타냅니다. 이름 2 필드 .

5.操作表的约束:
5.1 MySQL支持的完整性约束 
    所谓完整性是指数据的准确性和一致性,而完整性检查是指检查数据的准确性和一致性。MySQL提供了一种机制来检查数据库表中的数据是否满足规定的条件,以保证数据库中数据的准确性和一致性,这种机制就是约束。MySQL除了支持标准SQL的完整性约束外,还扩展增加了AUTO_INCREMENT约束。
    1. NOT NULL //约束字段的值不能为空
    2. DEFAULT //设置字段的默认值
    3. UNIQUE KEY(UK) //约束字段的值是唯一
    4. PRIMARY KEY(PK) //约束字段为表的主键,可以作为该表记录的唯一标识
    5. AUTO_INCREMENT //约束字段的值为自动增长
5.2 设置非空约束(NOT NULL, NK) 
    在创建数据库表时,为某些字段加上”NOT NULL”约束条件,保证所有记录中的该字段都是有值的。 设置非空约束的语法形式为: 

 CREATE TABLE table_name ( 
  属性名 数据类型 NOT NULL, 
 ); 

5.3 设置字段的默认值(DEFAULT) 
    当为数据库表中插入一条新记录时,如果没有为某个字段赋值,那么数据库系统会自动为这个字段插入默认值。设置数据库表中某个字段的默认值语法形式为: 

 CREATE TABLE table_name ( 
  属性名 数据类型 DEFAULT 默认值, 
 );

5.4 设置唯一约束(UNIQUE, UK) 
    当数据库表中的某个字段上的内容不允许重复时,则可以使用UK约束进行设置。即UK约束在创建数据库表时为某些字段加上”UNIQUE”约束条件,保证所有记录中该字段上的值不重复。
    设置唯一约束语法形式为:

CREATE TABLE table_name(
 属性名 数据类型 UNIQUE,
);

例如:

CREATE TABLE t_dept(
 deptno INT ,
 dname VARCHAR(20) UNIQUE,
 loc VARCHAR(40) 
);

    如果想给字段dname上的UK约束设置一个名字,可以执行SQL语句CONSTRAINT,示例如下:

CREATE TABLE t_dept(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT uk_dname UNIQUE(dname)
);
//在为约束设标识符时,推荐使用“约束缩写_字段名",因此设置为uk_dname;

5.5 设置主键约束(PRIMARY KEY , PK) 
    当想用数据库表中的某个字段来唯一标识所有记录时,则可以使用PK约束进行设置。在数据库表中之所以设置主键,是为了便于快速的查找到表中的记录。在具体设置主键约束时,必须要满足主键字段的值是唯一、非空的。主键可以使单一字段,也可以是多个字段,因此分为单字段主键和多字段主键。主键约束相当于 非空约束 加上 唯一约束。
    5.5.1 单字段主键
    设置PK约束,语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 PRIMARY KEY,
);

    如果想给字段deptno上的PK约束设置一个名字,可以使用CONSTRAINT,示例如下:

CREATE TABLE table_name(
 deptno INT,
 dname VARCHAR(20),
 loc VARCHAR(40),
 CONSTRAINT pk_deptno PRIMARY KEY(deptno)
);

    5.5.2 多字段主键
    当主键有多个字段组合而成时,则需要通过SQL语句CONSTRAINT来实现,其语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 ......
 [CONSTRAINT 约束名]PRIMARY KEY (属性名,属性名......)
);

5.6 设置字段值自动增加(AUTO_INCREMENT) 
    AUTO_INCREMENT 是MySQL唯一扩展的唯一性约束,当为数据库表中插入新记录时,字段上的值会生成唯一的ID,在数据库表中只能有一个字段使用该约束,该字段的数据类型必须是整数类型,由于设置自增长字段会生成唯一的ID,所以该字段也经常设置成PK主键。
    设置自增长语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型 AUTO_INCREMENT, //默认字段的值是从1开始增加,每增加一条在前一条的基础上加1
 deptno INT PRIMARY KEY AUTO_INCREMENT, //通常都会和PK一起写
);

5.7 设置外键约束(FOREIGN KEY ,FK) 
    前面的完整性约束都是在单表中进行设置,而外键约束通常保证两个表之间的参照完整性,即构建于两个表的两个字段之间的参照关系。在具体设置FK约束时,设置FK约束的字段必须依赖于数据库中已经存在的”一”(一对多中的一)的一方的主键,同时外键可以设置为null。
    设置FK约束的语法形式如下:

CREATE TABLE table_name(
 属性名 数据类型,
 属性名 数据类型,
 [CONSTRAINT 外键约束名] FOREIGN KEY (属性名1) REFERENCES 表名 (属性名2)
//备注:"外键约束名"用来标识约束名,"属性名1"参数是"多"的一方表中设置外键的字段名,"属性2"中,参数是"一"的一方设置主键约束的字段名。
)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
图文详解mysql架构原理图文详解mysql架构原理May 17, 2022 pm 05:54 PM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于架构原理的相关内容,MySQL Server架构自顶向下大致可以分网络连接层、服务层、存储引擎层和系统文件层,下面一起来看一下,希望对大家有帮助。

mysql怎么替换换行符mysql怎么替换换行符Apr 18, 2022 pm 03:14 PM

在mysql中,可以利用char()和REPLACE()函数来替换换行符;REPLACE()函数可以用新字符串替换列中的换行符,而换行符可使用“char(13)”来表示,语法为“replace(字段名,char(13),'新字符串') ”。

mysql怎么去掉第一个字符mysql怎么去掉第一个字符May 19, 2022 am 10:21 AM

方法:1、利用right函数,语法为“update 表名 set 指定字段 = right(指定字段, length(指定字段)-1)...”;2、利用substring函数,语法为“select substring(指定字段,2)..”。

mysql的msi与zip版本有什么区别mysql的msi与zip版本有什么区别May 16, 2022 pm 04:33 PM

mysql的msi与zip版本的区别:1、zip包含的安装程序是一种主动安装,而msi包含的是被installer所用的安装文件以提交请求的方式安装;2、zip是一种数据压缩和文档存储的文件格式,msi是微软格式的安装包。

mysql怎么将varchar转换为int类型mysql怎么将varchar转换为int类型May 12, 2022 pm 04:51 PM

转换方法:1、利用cast函数,语法“select * from 表名 order by cast(字段名 as SIGNED)”;2、利用“select * from 表名 order by CONVERT(字段名,SIGNED)”语句。

MySQL复制技术之异步复制和半同步复制MySQL复制技术之异步复制和半同步复制Apr 25, 2022 pm 07:21 PM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了关于MySQL复制技术的相关问题,包括了异步复制、半同步复制等等内容,下面一起来看一下,希望对大家有帮助。

带你把MySQL索引吃透了带你把MySQL索引吃透了Apr 22, 2022 am 11:48 AM

本篇文章给大家带来了关于mysql的相关知识,其中主要介绍了mysql高级篇的一些问题,包括了索引是什么、索引底层实现等等问题,下面一起来看一下,希望对大家有帮助。

mysql怎么判断是否是数字类型mysql怎么判断是否是数字类型May 16, 2022 am 10:09 AM

在mysql中,可以利用REGEXP运算符判断数据是否是数字类型,语法为“String REGEXP '[^0-9.]'”;该运算符是正则表达式的缩写,若数据字符中含有数字时,返回的结果是true,反之返回的结果是false。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

SublimeText3 중국어 버전

SublimeText3 중국어 버전

중국어 버전, 사용하기 매우 쉽습니다.

맨티스BT

맨티스BT

Mantis는 제품 결함 추적을 돕기 위해 설계된 배포하기 쉬운 웹 기반 결함 추적 도구입니다. PHP, MySQL 및 웹 서버가 필요합니다. 데모 및 호스팅 서비스를 확인해 보세요.

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)