[MYSQL] SET AUTOCOMMIT = FALSE Mysql 에서 DELETE 나 UPDATE, INSERT 하기 전에 AUTOCOMMIT을 꺼놓은 상태에서 쿼리문을 실행하면 실수로 데이터 정보가 변경 되었을 때 실행 취소를 할 수 있다. 방법은 다음과 같다. 1. SET AUTOCOMMIT = FALSE; 한 뒤 2. DELETE, UPDATE, INSERT 쿼리 날림 3. SELECT로 잘 변경 되었는지 확인했는데 실수했을 경우 4. ROLLBACK을 함 만약 제대로 변경되었을 경우에는 COMMIT을 해줘야한다. 그렇지 않고 그냥 냅뒀을 경우에는 정보가 변경되지 않은 상태를 그대로 유지가 된다. Helloworld!/MySql 2014. 11. 7. 17:08
[MYSQL] 컬럼 추가, 변경, 삭제 1. 컬럼 추가 : ALTER TABLE [테이블명] ADD [추가할 컬럼명] [컬럼타입] [컬럼위치] DEFAULT [값]; 2. 컬럼명 변경 : ALTER TABLE [테이블명] CHANGE [기존 컬럼명] [변경한 컬럼명] [컬럼타입] #ex) ALTER TABLE `TEST_TABLE` CHANGE USER_NAME NAME varchar(500); 3. 컬럼 타입 변경 : ALTER TABLE [테이블명] MODIFY [컬럼명] [변경할 타입] 4. 컬럼 삭제 : ALTER TABLE [테이블명] DROP [컬럼명]; 참고페이지 : http://toys999.blog.me/140194530204 Helloworld!/MySql 2014. 10. 22. 12:26
[MYSQL] MINUS TABLE for MySQL SELECT A.COLUMN_NAME FROM A_TABLE.A LEFT JOIN B_TABLE.B ON A.COLUMN_NAME = B.COLUMN_NAME WHERE B.COLUMN_NAME IS NULL A_TABLE - B_TABLE 시 위처럼 LEFT JOIN 사용한다. Helloworld!/MySql 2014. 9. 24. 14:52
[MYSQL] GROUP_CONCAT 다음 처럼 TEST_TABLE이라는 테이블에 TEST_ID, DUMMY_ID라는 컬럼이 있다.이때 TEST_ID가 1일 때 DUMMY_ID들을 한 행에 쉼표(,)로 구분하여 한 문장으로 나열 하고 싶을 때 GROUP_CONCAT을 사용한다 TEST_ID DUMMY_ID A B C 2 D 2 E 3 F ex) SELECT TEST_ID, GROUP_CONCAT(DISTINCT DUMMY_ID ORDER BY DUMMY_ID ASC SEPARATOR ',') FROM TEST_TABLE GROUP BY TEST_ID; 결과값) TEST_ID DUMMY_ID 1 A,B,C 2 D,E 3 F Helloworld!/MySql 2014. 8. 6. 14:20
[MAC] mac에서 homebrew로 mysql 설치하기 homebrew에서 패키지 찾아볼때는 search 명령어 사용 다음 명령어를 치면 mysql 이 들어간 명령어를 찾을수 있다 brew search mysql 다음 명령어를 쳐서 mysql 설치 brew install mysql mysql 실행은 mysql.server start Helloworld!/MAC 2014. 3. 17. 23:37
[MAC] mac에서 mysql 개발 환경 세팅하기 계속 귀찮아 미루고있던 mysql을 오늘에서야 설치한다 웹개발할때 좋다고 산 mac은 전에 쓰던 윈도우보다 더 웹서핑용으로 쓰고있으니...ㅎ.ㅎ 창피하당 ㅠㅠ 조금씩 익숙해지면 언젠가는 윈도우보다 더 잘쓰지 않을까 생각한다. 그런의미에서 설치하고 열심히 포스팅도! 1. mysql 설치하기 1.1) http://dev.mysql.com/downloads/mysql/ 위 사이트 들어가서 자신 mac 버젼과 맞는 mysql을 설치한다 (참고로 나는 세번쨰 Mac OS X 10.7 (x86, 32-bit), DMG Archive를 설치) 이때, 다운로드 버튼을 누르면 로그인이나 sing up하라는 페이지가 나오는데 페이지 하단에 잘보면 No thanks, just start my download. 라는 버튼이 .. Helloworld!/MAC 2013. 11. 11. 21:14
[MAC] MAC에서 PHP 개발환경 갖추기 OSX 10.8 Mountain Lion 부터는 Apahce를 Windows에서 처럼 따로 설치할 필요가 없다.httpd.conf file를 수정하기만 하면 바로 로컬에서 사용 가능하다.방법은 다음과 같다. [ Apache / PHP 활성화 ] 1. 우선 터미널 키기 2. 터미널에서 다음과같이 httpd.conf를 찾아 들어간다. sudo nano /etc/apache2/httpd.conf 그럼 httpd.conf를 수정할 수 있도록 httpd.conf가 열리는데 여기서 3. "control" + "w" 를 하서 'php' 라는 단어를 검색한다. 4. 그럼 다음 문장이 바로 검색되는데 앞의 #(샵)을 지워준다. #LoadModule php5_module libexec/apache2/libphp5.so 이.. Helloworld!/MAC 2013. 10. 18. 23:41
[MYSQL] SUBSTRING substring(대상문자, 시작인덱스, 읽어들일 길이) ex) CODE가 DB-001-000-M 일때 SELECT CODE, SUBSTRING(CODE, 8, 3), SUBSTRING(CODE, 12, 1) FROM 테이블명; //결과 //CODE : DB-001-000-M //SUBSTRING(CODE, 8, 3) : 000 //SUBSTRING(CODE, 12, 1) : M Helloworld!/MySql 2013. 10. 17. 14:51
[MYSQL] DATE_SUB, CURDATE CURDATE()는 현재 일자를 알려주는 메소드DATE_SUB()은 DATE 타입의 날짜를 감산할 때 사용하는 메소드 INSERT INTO 테이블2 SELECT * FORM 테이블1 WHERE DATE < DATE_SUB(CURDATE(), INTERVAL 14 DAY) 2주전까지 데이터를 "테이블2"로 옮기고 싶으면 위 같이 사용한다. Helloworld!/MySql 2013. 10. 17. 14:44
[MYSQL] DUPLICATE KEY 프로그램을 짜다보면 새로운 정보일 경우 데이터를 INSERT하고, 이미 기존에 데이터가 저장되있는 정보일 경우 UPDATE를 하는 코딩을 짜는 경우가 많다. 저런 경우 코딩을 다음과 같이 IF문을 사용해 데이터가 없으면 INSERT문을 실행하고 있으면 UPDATE문을 실행하도록 짰었다. $data = "SELECT ~~~~"; // 우선 SELECT문으로 데이터가 있는지 검사 if(empty($data)){ //데이터가 비여있으면 $sql = "INSERT ~~~~"; }else{ $sql = "UPDATE ~~~~"; } 하지만 INSERT 문에 ON DUPLICATE KEY UPDATE를 추가하면 UNIQUE 인덱스 또는 PRIMARY KEY 제약 조건이 설정된 컬럼에 중복된 값이 삽입되는 상황에서 .. Helloworld!/MySql 2013. 9. 26. 11:51