본문 바로가기

Database/MySQL6

[MySQL] Autocommit & Rollback mysql은 기본적으로 자동커밋 상태 (변경 가능) set autocommit = 1; -- 오토커밋 켜기 set autocommit = 0; -- 오토커밋 끄기 수동커밋은 아래와 같이 사용 START TRANSACTION; COMMIT; 되돌리기 위해선 커밋 대신 롤백으로 사용 START TRANSACTION; ROLLBACK; 출처 : https://g4world.tistory.com/395 MySQL 수동 커밋 및 되돌리기 (COMMIT, ROLLBACK) mysql은 기본적으로 자동커밋 상태 (변경 가능) 수동커밋은 아래와 같이 사용 START TRANSACTION; COMMIT; 되돌리기 위해선 커밋 대신 롤백으로 사용 START TRANSACTION; ROLLBACK; g4world.tisto.. 2023. 1. 9.
[MySQL] Auto increment 사용법 스키마를 작성하다보면 데이터의 수를 p.k로 설정해야 할때가 있다. 이럴경우 새로 데이터를 insert할때마다 max(num)으로 기존에 추가되어있는 num의 최대값을 알아야 p.k값이 겹치지 않게 추가를 할 수있다. 하지만 insert마다 이렇게 num의 최대값을 받아오는 sql문을 작성하는것은 비효율적이므로 num에 Auto_Increment 속성으로 insert문을 보낼때 마다 자동으로 num값이 증가되게 저장할 수 있다. Auto_Increment 속성은 table을 생성할때 옵션으로 줄수 있다. CREATE TABLE 'test'( 'num' int(10) NOT NULL AUTO_INCREMENT PRIMARY KEY, 'name' varchar(10) NOR NULL ); 이제 데이터를 in.. 2022. 9. 28.
[MySQL] 암호화해서 저장하는법 암호화/복호화 하는법이 포스팅된 블로그 포스팅을 그대로 가져왔는데 암호화는 되는데 복호화가 안된다.. MariaDB에서만 되는건가.. 컬럼의 속성이 varchar(30)으로 되어있었는데 넉넉하게 varchar(200)으로 수정하니 정상적으로 복호화가 됐다. 컬럼이 너무 짧게 되어있던듯 ㅋㅋㅋ 요약! 암호화 UPDATE PM_USER SET PASSWORD = HEX(AES_ENCRYPT('abc1234', SHA2('shxdb@123', 256))) WHERE CMPCD = 'P0001' AND USERID = 'guest4' 복호화 SELECT USERID , PASSWORD , LENGTH(PASSWORD) , CONVERT(AES_DECRYPT(UNHEX(PASSWORD), SHA2('shxdb@1.. 2022. 7. 28.
[MySQL] AutoCommit 해제 MySQL Workbench 오토커밋(Auto Commit) 해제하기 MySQL Workbench로 MySQL DB에 접속했을 때 AutoCommit 설정이 기본값이다. 실수로 데이터를 날려버릴 가능성이 있기 때문에, AutoCommit을 해제하기를 권장한다. (필자는 MySQL Workbench 6.3 CE 버전 사용) -- 현재 AutoCommit 값 확인 SELECT @@AUTOCOMMIT; -- AutoCommit 설정 SET AUTOCOMMIT = 1; -- AutoCommit 해제 SET AUTOCOMMIT = 0; 그런데 MySQL Workbench를 기동할 때마다 SET AUTOCOMMIT = 0; 명령어 실행하는 것을 깜빡할 수 있다. 따라서 언제나 AutoCommit이 해제되어 시작되도.. 2022. 7. 2.