여러가지 명령정리

MySQL 2007/05/29 15:08
mysql> show variables;                                              서버의 variables(설정사항)출력
mysql> show variables like 'have_inno%'                             조건에 맞는 variables만 출력
mysql> show databases;                                              database목록
mysql> show tables;                                                 현재DB의 테이블목록(temporary table은 출력하지 않음)
mysql> show tables from db명;                                       지정된 db명이 소유한 테이블목록
mysql> show tables like 'mem%';                                     조건에 맞는 테이블목록만 출력
mysql> show index from 테이블명;                                    인덱스 보기
mysql> show columns from 테이블명;                                  테이블구조(describe 테이블명, explain 테이블명)
mysql> show table status;                                           현재 DB의 테이블들의 상태(row수,table type,row길이,..)
mysql> show table status from db명;                                 지정된 DB의 테이블들의 상태(row수,table type,row길이,..)
mysql> show create table 테이블명;                                  해당 테이블 생성 SQL문 출력
mysql> rename table 테이블1 to 테이블2;                             테이블명 변경(ALTER TABLE 테이블1 RENAME TO 테이블2)
mysql> rename table 테이블1 to 테이블2, 테이블3 to 테이블4;         rename multiple tables
mysql> rename table db1명.테이블명 to db2명.테이블명;               테이블을 다른 DB로 이동
mysql> alter table 테이블명 add 컬럼명 데이터타입;                  컬럼추가
mysql> alter table 테이블명 del 컬럼명;                             컬럼제거
mysql> alter table 테이블명 modify 컬럼명 컬럼타입;                 컬럼명에 지정된 컬럼타입의 변경
mysql> alter table 테이블명 change old컬럼명 new컬럼명 컬럼타입     컬럼명 변경
mysql> alter table 테이블명 type=innodb;                            테이블type변경
mysql> create table 테이블명(..) type=heap min_rows=10000;          10000row를 수용할 수 있을 만큼 메모리할당(heap type이므로)
mysql> select version();                                            MySQL서버버전 출력
mysql> create table 테이블2 as select * from 테이블1;               테이블1과 동일한 테이블 생성(with 데이터, as는 생략가능)
mysql> create table 테이블2 as select * from 테이블1 where 1=2;     테이블1과 동일한 구조의 테이블 생성(without 데이터, 1=2는 0으로 할수도 있다.)
mysql> insert into 테이블2 select * from 테이블1;                   테이블1의 데이터를 테이블2에 insert


출처 : php.comrja.com

2007/05/29 15:08 2007/05/29 15:08

수치 데이타 타입

MySQL 2007/05/29 15:04

M : 표시할수 있는 최대 사이즈. 최대 255
D : 소수점이하의 숫자 갯수  
- TINYINT[(M)] [UNSIGNED] [ZEROFILL]
  정수형(1 byte)으로 -128부터 127까지. unsigned로 사용시 0부터 255
- SMALLINT[(M)] [UNSIGNED] [ZEROFILL]
  정수형(2 byte)으로 -32768부터 32767까지. unsigned로 사용시 0부터 65535
- MEDIUMINT[(M)] [UNSIGNED] [ZEROFILL]
  정수형(3 byte)으로 -8388608부터 8388607까지. unsigned로 사용시 0부터 16777215
- INT[(M)] [UNSIGNED] [ZEROFILL]
  정수형(4 byte)으로 -2147483648부터 214748364까지. unsigned로 사용시 0부터
  4294967295
- INTEGER[(M)] [UNSIGNED] [ZEROFILL]
  위의 INT와 같다.
- BIGINT[(M)] [UNSIGNED] [ZEROFILL]
  정수형(8 byte)으로 -922337203685477580 부터 9223372036854775807까지.
  unsigned로 사용시 0부터 18446744073709551615
- FLOAT(precision) [ZEROFILL]
  부동 소수(4,8 byte)  , unsinged는 사용할수 없다. precision은 4또는 8
  FLOAT(4)는 일반적인 FLOAT형이며 
  FLOAT(8)는 DOUBLE형이라고 생각하면 된다.
- FLOAT[(M,D)] [ZEROFILL]
  부동소수 (4byte) , unsigned는 사용할수 없다.
  -3.402823466E+38 에서  -1.175494351E-38, 0 그리고
  1.175494351E-38 에서 3.402823466E+38.
- DOUBLE[(M,D)] [ZEROFILL]
  부동소수 (8byte) , unsigned는 사용할수 없다.
  -1.7976931348623157E+308에서 -2.2250738585072014E-308, 0 그리고
  2.2250738585072014E-308에서 1.7976931348623157E+308.
- DOUBLE PRECISION[(M,D)] [ZEROFILL]
  (8 byte)
- REAL[(M,D)] [ZEROFILL]
  DOUBLE 과 같다.
- DECIMAL(M,D) [ZEROFILL]
  (M byte)unpacked floating-point number, unsigned는 사용할수 없다.
  이것은 각각의 숫자를 CHAR로 저장한다.
- NUMERIC(M,D) [ZEROFILL]
  DECIMAL과 같다.

[b]5.2 문자 테이타 타입[/b]

- CHAR(M) [BINARY]
  문자의 수가 M인 문자열
- VARCHAR(M) [BINARY]
  문자의 수가 최대 M인 문자열
- TINYBLOB
  255 (2^8 - 1)문자.
- TINYTEXT
  255 (2^8 - 1)문자.
- TEXT
  65535 (2^16 - 1)문자.
- BLOB ( Binary Large OBject )
  65535 (2^16 - 1)문자.
- MEDIUMBLOB
  16777215 (2^24 - 1)문자.
- MEDIUMTEXT
  16777215 (2^24 - 1)문자.
- LONGBLOB
4294967295 (2^32 - 1)문자.
- LONGTEXT
4294967295 (2^32 - 1)문자.

[참고 ]
- 모든 문자는 \ 또는 \ 로 묶어 준다.
C에서의 같이 \\는 문자열 안에서 특수한 의미를 가진다.
\0  NULcharacter.
\n  newline character.
\t  tab character.
\r  carriage return character.
\b  backspace character.
\  single quote (`\) character.
\  double quote (`\) character.
\  backslash (`\) character.
\%  `%\ character.  이것은 like문안에서  모든 문자를 의미한다.
\_ A `_\ character. 이것은 like문안에서 한 문자를 의미한다.

[b]5.3 날짜와 시간  데이타 타입[/b]

- DATE
  날짜(3 byte), \1000-01-01\에서 \9999-12-31\.
- DATETIME
  날짜와 시간(8 byte), \1000-01-01 00:00:00\에서 \9999-12-31 23:59:59\.
- TIMESTAMP[(M)] 
  timestamp(4 byte). 유닉스 타임으로 1970년부터 1초단위로 시간을 표시한다.
  \1970-01-01 00:00:00\에서 2037.
  YYYYMMDDHHMMSS => TIMESTAMP(14)
  YYMMDDHHMMSS   => TIMESTAMP(12)
  YYYYMMDD       => TIMESTAMP(8)
  YYMMDD         => TIMESTAMP(6)
- TIME
  시간(3 byte), \-838:59:59\에서 \838:59:59\.
- YEAR
  년도(1 byte), 1901에서 2155, 그리고 0000.

5.5 기타
---------
- ENUM(\value1\,\value2\,...)
  목록, value는 문자형 타입이다. 그리고 여러개의 값중 오로지 한가지의 값만이
  저장 된다. NULL도 가질수 있다. 최고 65535
- SET(\value1\,\value2\,...)
  집합. 0부터 64개까지의 멤버를 가질수 있다.


출처 : database.sarang.net

2007/05/29 15:04 2007/05/29 15:04

이 블로그에 있는 글 특성은 모두
필자가 필요해서(기억력이 나빠) 단순 기록해 놓는 것입니다.
따라서, 오류 사항이 있을 수도 있습니다.

2007/05/29 14:58 2007/05/29 14:58