MySql之ALTER命令用法详细解读_MySQL
本文详细解读了MySql语法中Alter命令的用法,这是一个用法比较多的语法,而且功能还是很强大的。
USE learning;(自己要提前建好) CREATE TABLE student(id INT NOT NULL, name CHAR(10) NOT NULL, class INT NOT NULL, age INT );

一、删除,添加或修改表字段
删除表字段
如下命令使用了 ALTER 命令及 DROP 子句来删除以上创建表的 age字段:
ALTER TABLE student DROP age;

如果数据表中只剩余一个字段则无法使用DROP来删除字段。
添加表字段MySQL 中使用 ADD 子句来想数据表中添加列,如下实例在表 student 中添加age字段,并定义数据类型:
ALTER TABLE student ADD age INT NOT NULL;
SHOW COLUMNS FROM student来看表结构
如果你需要指定新增字段的位置,可以使用MySQL提供的关键字 FIRST (设定位第一列), AFTER 字段名(设定位于某个字段之后)。
尝试以下 ALTER TABLE 语句, 在执行成功后,使用 SHOW COLUMNS 查看表结构的变化:
ALTER TABLE student ADD sex CHAR(2) FIRST;

FIRST 和 AFTER 关键字只占用于 ADD 子句,所以如果你想重置数据表字段的位置就需要先使用 DROP 删除字段然后使用 ADD 来添加字段并设置位置。
ALTER TABLE student DROP sex; ALTER TABLE student ADD sex CHAR(2) AFTER age;
修改字段类型及名称
如果需要修改字段类型及名称, 你可以在ALTER命令中使用 MODIFY 或 CHANGE 子句 。
例如,把字段 name 的类型从 CHAR(10) 改为 CHAR(100),可以执行以下命令:
ALTER TABLE student MODIFY age CHAR(100);

使用 CHANGE 子句, 语法有很大的不同。 在 CHANGE 关键字之后,紧跟着的是你要修改的字段名,然后指定新字段的类型及名称。尝试如下实例:
ALTER TABLE student CHANGE id stu_id BIGINT PRIMARY KEY;
ALTER TABLE 对 Null 值和默认值的影响
当你修改字段时,你可以指定是否包含只或者是否设置默认值。
以下实例,指定字段sex为 NOT NULL 且默认值为男 。
ALTER TABLE sutdent MODIFY sex CHAR(2) NOT NULL DEFAULT '男';

如果你不设置默认值,MySQL会自动设置该字段默认为 NULL。
你也可以使用 ALTER 命令及 DROP子句来删除字段的默认值,如下实例:
ALTER TABLE student ALTER sex DROP DEFAULT; SHOW COLUMNS FROM student;
修改数据表类型,可以使用 ALTER 命令及 TYPE 子句来完成。尝试以下实例,我们将表 student的类型修改为 MYISAM :
注意:查看数据表类型可以使用 SHOW CREATE TABLE 语句。
ALTER TABLE student ENGINE = MYISAM SHOW CREATE TABLE student;

二、修改表名
如果需要修改数据表的名称,可以在 ALTER TABLE 语句中使用 RENAME 子句来实现。
尝试以下实例将数据表 student 重命名为 student_1:
mysql> ALTER TABLE student RENAME TO student_1;
三、主键和索引修改
删除表中主键
ALTER TABLE student DROP PRIMARY KEY;
ALTER TABLE student ADD CONSTRAINT PK_STUDENT PRIMARY KEY (id,class);
添加索引
ALTER TABLE student ADD INDEX index_name (name);
查看索引
SHOW INDEX FROM student;
添加唯一限制条件索引
ALTER TABLE student ADD UNIQUE emp_name(age);
删除索引
ALTER TABLE student DROP INDEX index_name;


핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

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

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

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

뜨거운 주제











sudo 명령을 사용하면 사용자는 수퍼유저 모드로 전환하지 않고도 상승된 권한 모드에서 명령을 실행할 수 있습니다. 이 기사에서는 Windows 시스템에서 sudo 명령과 유사한 기능을 시뮬레이션하는 방법을 소개합니다. 슈도사령부란 무엇인가? Sudo("superuser do"의 약어)는 Linux 및 MacOS와 같은 Unix 기반 운영 체제 사용자가 일반적으로 관리자가 보유하는 높은 권한으로 명령을 실행할 수 있도록 하는 명령줄 도구입니다. Windows 11/10에서 SUDO 명령 실행 그러나 최신 Windows 11 Insider 미리 보기 버전이 출시되면서 Windows 사용자는 이제 이 기능을 경험할 수 있습니다. 이 새로운 기능을 통해 사용자는 다음을 수행할 수 있습니다.

이 문서에서는 명령 프롬프트(CommandPrompt)를 사용하여 Win11 시스템에서 네트워크 어댑터의 물리적 주소(MAC 주소)를 찾는 방법을 독자에게 소개합니다. MAC 주소는 네트워크 통신에서 중요한 역할을 하는 네트워크 인터페이스 카드(NIC)의 고유 식별자입니다. 명령 프롬프트를 통해 사용자는 현재 컴퓨터에 있는 모든 네트워크 어댑터의 MAC 주소 정보를 쉽게 얻을 수 있으며 이는 네트워크 문제 해결, 네트워크 설정 구성 및 기타 작업에 매우 유용합니다. 방법 1: "명령 프롬프트" 사용 1. [Win+X] 키 조합을 누르거나 [마우스 오른쪽 버튼 클릭] 작업 표시줄의 [Windows 로고]를 클릭하고 메뉴 항목이 열리면 [실행]을 선택합니다. .창을 실행하고 [cmd] 명령어를 입력한 후

cmd 창에는 telnet이 내부 또는 외부 명령이 아니라는 메시지가 표시됩니다. 이 문제는 사용자 작업에 문제가 없기 때문에 나타나지 않습니다. 몇 가지 작은 단계를 수행하면 작업 설정을 통해 텔넷이 내부 또는 외부 명령이 아니라는 cmd 창 문제를 해결할 수 있습니다. 오늘 편집기에서 가져온 텔넷이 내부 또는 외부 명령이 아니라는 메시지를 표시하는 cmd 창에 대한 솔루션을 살펴보겠습니다. cmd 창에 텔넷이 내부 또는 외부 명령이 아니라는 메시지가 표시됩니다. 해결 방법: 1. 컴퓨터의 제어판을 엽니다. 2. 프로그램과 기능을 찾아보세요. 3. 왼쪽에서 Windows 기능 켜기/끄기를 찾습니다. 4. "텔넷 클라이언트"를 찾으세요

Win11 시스템에서는 명령을 통해 Hyper-V 고급 세션 모드를 활성화하거나 비활성화할 수 있습니다. 이 문서에서는 명령을 사용하여 사용자가 시스템에서 Hyper-V 기능을 더 잘 관리하고 제어할 수 있도록 돕는 방법을 소개합니다. Hyper-V는 Microsoft에서 제공하는 가상화 기술로 Windows Server와 Windows 10 및 11(Home Edition 제외)에 내장되어 있어 사용자가 Windows 시스템에서 가상 운영 체제를 실행할 수 있습니다. 가상 머신은 호스트 운영 체제에서 격리되어 있지만 설정을 통해 사운드 카드, 저장 장치 등 호스트 리소스를 계속 사용할 수 있습니다. 주요 설정 중 하나는 고급 세션 모드를 활성화하는 것입니다. 고급 세션 모드는 Hyper입니다.

1. 개요 sar 명령은 시스템 활동에서 수집된 데이터를 통해 시스템 사용 보고서를 표시합니다. 이러한 보고서는 다양한 섹션으로 구성되어 있으며 각 섹션에는 데이터 유형과 데이터 수집 시기가 포함되어 있습니다. sar 명령의 기본 모드는 CPU에 액세스하는 다양한 리소스(예: 사용자, 시스템, I/O 스케줄러 등)에 대해 다양한 시간 증분으로 CPU 사용량을 표시합니다. 또한 특정 기간 동안 유휴 CPU의 비율을 표시합니다. 각 데이터 포인트의 평균값은 보고서 하단에 나열됩니다. sar 보고서는 기본적으로 10분마다 데이터를 수집하지만 다양한 옵션을 사용하여 이러한 보고서를 필터링하고 조정할 수 있습니다. uptime 명령과 마찬가지로 sar 명령도 CPU 로드를 모니터링하는 데 도움이 될 수 있습니다. sar를 통해 과도한 부하 발생을 이해할 수 있다.

Linux에서 서비스를 다시 시작하는 올바른 방법은 무엇입니까? Linux 시스템을 사용하다 보면 서비스를 다시 시작해야 하는 상황이 자주 발생하지만, 서비스를 다시 시작할 때 서비스가 실제로 중지되지 않거나 시작되지 않는 등의 문제가 발생할 수도 있습니다. 따라서 서비스를 다시 시작하는 올바른 방법을 익히는 것이 매우 중요합니다. Linux에서는 일반적으로 systemctl 명령을 사용하여 시스템 서비스를 관리할 수 있습니다. systemctl 명령은 systemd 시스템 관리자의 일부입니다.

Linux는 파이프, 신호, 메시지 큐, 공유 메모리 등과 같은 효율적인 프로세스 간 통신 메커니즘을 제공하는 강력한 운영 체제입니다. 하지만 더 간단하고 유연하며 효율적인 의사소통 방법이 있을까요? 대답은 '예'입니다. 그게 eventfd입니다. eventfd는 Linux 버전 2.6에 도입된 시스템 호출로, 이벤트 알림을 구현하는 데, 즉 파일 설명자를 통해 이벤트를 전달하는 데 사용할 수 있습니다. eventfd에는 커널이 유지 관리하는 64비트 부호 없는 정수 카운터가 포함되어 있습니다. 프로세스는 프로세스 간 통신을 달성하기 위해 이 파일 설명자를 읽고 쓰면서 카운터 값을 읽고 변경할 수 있습니다. eventfd의 장점은 무엇입니까? 그것은 다음과 같은 기능을 가지고 있습니다

1단계: Windows 11 또는 10 시스템에서 PowerShell 또는 명령 프롬프트를 열고 검색 상자로 이동하여 원하는 대로 CMD 또는 Powershell을 입력합니다. 여기서는 PowerShell을 사용합니다. 결과에 나타나면 "관리자 권한으로 실행"을 선택하십시오. Windows에 소프트웨어를 설치하기 위해 명령을 실행하려면 관리자 액세스 권한이 필요하기 때문입니다. 2단계: Winget 가용성 확인 모든 최신 버전의 Windows 10 및 11에는 기본적으로 Winget 도구가 함께 제공됩니다. 하지만 먼저 작동하는지 확인해 보겠습니다. 유형: Winget 그 대가로 다음 명령과 함께 사용할 수 있음을 알 수 있습니다.
