logo

SQL 테이블 생성

SQL CREATE TABLE 문은 데이터베이스에 테이블을 생성하는 데 사용됩니다.

테이블을 생성하려면 테이블 이름을 지정하고 해당 열과 각 열의 데이터 유형을 정의해야 합니다.

테이블을 생성하는 간단한 구문을 살펴보겠습니다.

 create table 'tablename' ('column1' 'data type', 'column2' 'data type', 'column3' 'data type', ... 'columnN' 'data type'); 

열의 데이터 유형은 데이터베이스마다 다를 수 있습니다. 예를 들어 Oracle 데이터베이스에서는 정수 값으로 NUMBER가 지원되는 반면 MySQL에서는 INT가 지원됩니다.

ID를 기본 키로 사용하고 NOT NULL인 STUDENTS 테이블을 생성하는 예를 들어 보겠습니다. 이는 테이블에서 레코드를 생성하는 동안 이러한 필드가 NULL이 될 수 없음을 보여주는 제약 조건입니다.

 SQL> CREATE TABLE STUDENTS ( ID INT NOT NULL, NAME VARCHAR (20) NOT NULL, AGE INT NOT NULL, ADDRESS CHAR (25), PRIMARY KEY (ID) ); 

SQL Server에 표시된 메시지를 보고 테이블을 성공적으로 생성했는지 확인할 수 있습니다. 그렇지 않으면 다음과 같이 DESC 명령을 사용할 수 있습니다.

아파치

SQL> DESC 학생;

필드유형없는열쇠기본추가의
ID정수(11)아니요
이름바르차르(20)아니요
나이정수(11)아니요
주소바르차르(25)없는

4줄 세트(0.00초)

이제 데이터베이스에서 STUDENTS 테이블을 사용할 수 있으며 학생과 관련된 필수 정보를 저장하는 데 사용할 수 있습니다.

MySQL의 SQL CREATE TABLE 예

MySQL 데이터베이스에 테이블을 생성하는 명령을 살펴보겠습니다.

 CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) ); 

Oracle의 SQL CREATE TABLE 예

Oracle 데이터베이스에 테이블을 생성하는 명령을 살펴보겠습니다.

 CREATE TABLE Employee ( EmployeeID number(10), FirstName varchar2(255), LastName varchar2(255), Email varchar2(255), AddressLine varchar2(255), City varchar2(255) ); 

Microsoft SQLServer의 SQL CREATE TABLE 예

SQLServer 데이터베이스에 테이블을 생성하는 명령을 살펴보겠습니다. MySQL, 오라클과 동일합니다.

 CREATE TABLE Employee ( EmployeeID int, FirstName varchar(255), LastName varchar(255), Email varchar(255), AddressLine varchar(255), City varchar(255) ); 

다른 테이블을 사용하여 테이블 만들기

create table 명령을 사용하여 기존 테이블의 복사본을 만들 수 있습니다. 새 테이블은 이전 테이블과 동일한 열 서명을 갖습니다. 모든 열 또는 일부 특정 열을 선택할 수 있습니다.

이전 테이블을 사용하여 새 테이블을 생성하면 새 테이블은 이전 테이블의 기존 값으로 채워집니다.

문자를 int로 자바

다른 테이블을 사용하여 테이블을 생성하는 기본 구문은 다음과 같습니다.

 CREATE TABLE table_name AS SELECT column1, column2,... FROM old_table_name WHERE ..... ; The following SQL creates a copy of the employee table. CREATE TABLE EmployeeCopy AS SELECT EmployeeID, FirstName, Email FROM Employee; 

CREATE TABLE 문을 사용한 SQL 기본 키

다음 쿼리는 'Employee' 테이블이 생성될 때 'D' 열에 PRIMARY KEY를 생성합니다.

MySQL

 CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), PRIMARY KEY (EmployeeID) ); 

SQL 서버/오라클/MS 액세스

 CREATE TABLE Employee( EmployeeID NOT NULL PRIMARY KEY, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255) ); 

여러 열에 대한 PRIMARY KEY 제약 조건을 정의하고 PRIMARY KEY 제약 조건의 이름 지정을 허용하려면 다음 쿼리를 사용합니다.

MySQL/SQL Server/Oracle/MS 액세스용

 CREATE TABLE Employee( EmployeeID NOT NULL, FirstName varchar(255) NOT NULL, LastName varchar(255), City varchar(255), CONSTRAINT PK_Employee PRIMARY KEY (EmployeeID, FirstName) );