• 회원가입
  • 로그인
  • 구글아이디로 로그인

[mysql] Node.js - MySQL Create Table (테이블 생성) ※ Primary key 설정.

4,811  

목차

  1. Table 생성
  2. Primary Key 설정
  3. Primary Key 초기화 - 1부터 시작 후 1씩 자동 증가
  4. 컬럼명 변경

※ 앞 강의와 내용 연결되니, 이해 안 되는 분은 앞 강 먼저 공부 !!

 

Table 생성

1. C:\User\사용자명\hz.js 생성. (Table명 : hz_member)

 

var mysql = require('mysql');


var con = mysql.createConnection({

  host: "localhost",

  user: "root",

  password: "autoset",

  database: "hz"

});


con.connect(function(err) {

  if (err) throw err;

  console.log("Connected!");

  var sql = "CREATE TABLE hz_member (mb_name VARCHAR(255), mb_level VARCHAR(255))";

  con.query(sql, function (err, result) {

    if (err) throw err;

    console.log("Table created");

  });

});

 


2. CMD 모드에서 아래 명령어 입력해 시작 설정.

 

C:\User\사용자명>node hz.js

 

 

※ Table 생성 성공하면 아래 메세지 뜸.

Connected!

Table created

※ 위 예제는 Primary Key 없이 생성한 거라, 맨 아래 참고해 추가 필요.

 

Primary Key 설정

 

※ 테이블 생성 시, 각 레코드에 대한 고유키 컬럼 생성해야 함.

※ 검색이 빨라짐.

※ 컬럼을 "INT AUTO_INCREMENT PRIMARY KEY"로 정의 시,

    각 레코드의 고유번호가 1부터 시작해 ,레코드마다 1씩 증가. 

※ 레코드를 삭제하더라도, 기존 번호에 연이어서 증가함.

※ 1부터 다시 시작하려면, TRUNCATE 명령어로 테이블 비워야 함. 

(예) 

TRUNCATE TABLE table_name;  (예) TRUNCATE TABLE hz;

또는, 

TRUNCATE table_name; (예) TRANCATE hz;

 


1. C:\User\사용자명\hz.js 생성. (Primary Key : mb_id) 

 

var mysql = require('mysql');


var con = mysql.createConnection({

  host: "localhost",

  user: "root",

  password: "autoset",

  database: "hz"

});


con.connect(function(err) {

  if (err) throw err;

  console.log("Connected!");

  var sql = "CREATE TABLE hz_member (mb_id INT AUTO_INCREMENT PRIMARY KEY, mb_name VARCHAR(255), mb_level VARCHAR(255))";

  con.query(sql, function (err, result) {

    if (err) throw err;

    console.log("Table created");

  });

});

 


2. CMD 모드에서 아래 명령어 입력해 시작 설정.

 

C:\User\사용자명>node hz.js

 

 

※ Table 생성 성공하면 아래 메세지 뜸.

Connected!

Table created

 

 

PS.

테이블이 이미 존재 시, ALTER TABLE 키워드로 Primary key만 생성.

 

var mysql = require('mysql');


var con = mysql.createConnection({

  host: "localhost",

  user: "root",

  password: "autoset",

  database: "hz"

});


con.connect(function(err) {

  if (err) throw err;

  console.log("Connected!");

  var sql = "ALTER TABLE hz_member ADD COLUMN mb_id INT AUTO_INCREMENT PRIMARY KEY AFTER mb_name";

  con.query(sql, function (err, result) {

    if (err) throw err;

    console.log("Table altered");

  });

});

 

주의: 컬럼 이동은 BEFORE 키워드 대신  AFTERFIRST 키워드 사용.

 

PS.

mb_id 컬럼을 맨 앞으로 이동.

 

ALTER TABLE `hz_member` CHANGE `mb_id` `mb_id` INT(11) NOT NULL AUTO_INCREMENT FIRST;

 

 

PS.

특정 컬럼 앞/뒤에 컬럼 추가 + 순서 변경.

https://homzzang.com/b/sql-47

 

Primary Key 초기화 - 1부터 시작 후 1씩 자동 증가

 

ALTER TABLE `hz_member` AUTO_INCREMENT=1;

SET @COUNT = 0;

UPDATE `hz_member` SET `mb_id` = @COUNT:=@COUNT+1;

 


주의: 

아래 쿼리문 1줄만 사용할 경우, 

테이블에 새로 시작할 값보다 큰 값 있으면 안 됨.

ALTER TABLE `hz_member` AUTO_INCREMENT=1;

 

 

컬럼명 변경

 

ALTER TABLE 테이블명 CHANGE 옛컬럼명 새컬럼명 데이터타입;

ALTER TABLE hz_member CHANGE mb_level mb_point INT;

 

더 자세한 건 https://juyoung-1008.tistory.com/17 참고.



분류 제목
basic Node.js - Home
basic Node.js - Intro (소개)
basic Node.js - Start (시작) - 사용 환경 구축
basic Node.js - Modules (모듈)
basic Node.js - HTTP Module (데이터 전송 모듈)
basic Node.js - File System Module (파일 시스템 모듈)
basic Node.js - URL Module (주소 처리 모듈)
basic Node.js - NPM (노드 패키지 관리자)
basic Node.js - Events (이벤트)
basic Node.js - Upload Files (파일 업로드) 2
basic Node.js - Email (이메일 보내기)
mysql Node.js - MySQL 설치・연결 + 쿼리 보내기
mysql Node.js - MySQL Create Database (DB 생성)
mysql Node.js - MySQL Create Table (테이블 생성) ※ Primary key 설정.
mysql Node.js - MySQL Insert Into (데이터 삽입)
mysql Node.js - MySQL Select From (데이터 선택)
mysql Node.js - MySQL Where (조건절)
mysql Node.js - MySQL Order By (정렬 순서)
mysql Node.js - MySQL Delete From (데이터 삭제)
mysql Node.js - MySQL Drop Table (테이블 삭제)
1/4
목록
찾아주셔서 감사합니다. Since 2012