본문 바로가기

db

[mysql] 다른 테이블에서 가져온 데이터 삽입 (insert into select) 속성 몇개만 넣으려면 INSERT INTO 넣을 테이블이름 (넣을 속성이름) SELECT 가져올 속성이름 FROM 가져올 테이블이름 WHERE 조건값; 아예 통채로 넣으려면 INSERT INTO 넣을 테이블이름 SELECT * FROM 가져올 테이블이름 WHERE 조건값; ex) insert into personA select * from personB where name = "김미래" insert into personA (seq, name, age) select seq, name, age from personB where name = "김미래" 더보기
[Mysql workbench] 에러 1265 : Data truncated for column 오류 내용 1 warning(s): 1265 Data truncated for column '~~~~~~~' at row 14 Rows matched 해결방법 데이터가 잘렸을때 나오는 경고 오류 보통 등록된 자료형의 범위를 벗어난 큰 데이터를 넣으면 그렇다! 자료형을 TEXT 에서 MEDIUMTEXT 로 수정 ALTER TABLE 테이블명 MODIFY 컬럼명 MEDIUMTEXT; 더보기
[Mysql workbench] 에러 1064 : You have an error in your SQL syntax; 오류 내용 Error Code: 1064. You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near ''2003100005'' at line 1 select * from 테이블이름; 을 했는데 급 뜬 에러.. 알고보니 import 한 테이블 명이 숫자로만 이루어져있어서 그런듯 Mysql reserved words에 들어가는 단어를 사용하면 그렇다! 해결방법 이를 위해서는 reserved words를 키보드 ESC밑에 있는 ` `를 사용해 감싸준다. select * from `테이블이름`; 하니까 완료! 더보기
[MYSQL] 컬럼 COMMENT 조회방법 SELECT TABLE_NAME, COLUMN_NAME, COLUMN_COMMENT FROM INFORMATION_SCHEMA.COLUMNS WHERE TABLE_SCHEMA = 'DB명' AND TABLE_NAME = 'TABLE 이름' ; 더보기
WHERE 1 = 1 을 쓰는 이유 동적 쿼리(조건이 상황에 따라 붙는 경우)를 사용할때 where 1 = 1 은 무조건 true로 뒤에 and 조건문만 붙으면 동적쿼리문을 쓸수 있다. 동적쿼리문인데 만약 어떤 조건도 붙지 않을 경우에는 select * from where (조건문 없음) 로 끝나기 때문에 에러가 나는것을 방지 더보기