[MariaDB] 테이블 백업, 복사 하는방법
테이블 구조 + 데이터 복사아래와 같이 작성하면 새테이블명의 새로운 테이블이 생성되고, 새테이블이 기존테이블의 데이터와 컬럼으로 채워진다.create table 새테이블명 (select * from 기존테이블명) 테이블 구조 복사CREATE TABLE 새테이블 LIKE 기존테이블 테이블 데이터 복사INSERT INTO 새테이블 (SELECT * FROM 기존테이블)
테이블 구조 + 데이터 복사아래와 같이 작성하면 새테이블명의 새로운 테이블이 생성되고, 새테이블이 기존테이블의 데이터와 컬럼으로 채워진다.create table 새테이블명 (select * from 기존테이블명) 테이블 구조 복사CREATE TABLE 새테이블 LIKE 기존테이블 테이블 데이터 복사INSERT INTO 새테이블 (SELECT * FROM 기존테이블)
권한을 부여하는 것은 관리자 계정의 콘솔 창에서 진행해도 무방하다.단, 관리자 계정이 다른 계정을 생성할 권한이 있어야 한다. 어디까지 허용할지 권한 주는 것도 허용되어 있어야 한다. 확인계정 관리자 권한 확인show databases;select * from mysql.user; 자세한 권한 확인show grants for '계정명'@'호스트이름' 계정 생성계정 생성CREATE USER 'readonly_user'@'localhost' IDENTIFIED BY '비밀번호'; 계정 권한 부여 GRANT SELECT ON `my_database`.* TO 'readonly_user'@'localhost'; // my_database 에만 조회 권한 부여GRANT SELECT ON *.* TO 'rea..
Spring Boot, Mybatis, PostgreSQL 을 사용하여 프로젝트를 구현하고 있다. 원인그런데 이번에 insert 를 구현하는데 Parameter 'user_id' not found. Available parameters are [ ... ] 에러가 발생하는 거다. 보면 user_id 로 값을 잘 넘기고 있는 걸 확인할 수 있다.곰곰히 생각해보다가, vo 와 다른 변수를 파라메터로 함께 넘기는게 처음이라는 걸 깨달았다. vo 객체와 다른 변수를 함께 넘겨 이 둘을 구분하지 못하고 있는 건 아닐까? 해결방법혹시나 해서 MyBatis XML 파일에 vo 객체 내에서 불러오는 것들은 vo 를 붙여주니 해결되었다. INSERT INTO penaltylog ( ..
인터페이스인터페이스 설명 보러가기https://skylarcoding.tistory.com/253 자바 객체지향 - 인터페이스 implements인터페이스추상 메서드의 집합구현된 것이 전혀 없는 설계도이다. 껍데기 (모든 멤버가 public) interface 인터페이스이름 { public static final 타입 상수이름 = 값 ; public abstract 메서드이름 (매개변수목skylarcoding.tistory.com 다형성다형성 설명 보러가기https://skylarcoding.tistory.com/251 자바 객체지향 - 다형성다형성이란조상 타입 참조 변수로 자손 타입 객체를 다루는 것 * 자손 타입의 참조변수로 조상 타입의 객체를 가리킬 수 없다. 있는 기능을 안 쓰는 건 괜찮은데, ..
에러 원인1. Service 부분에서 dao 메서드 사용하는데 "dao.메서드명" 이 아닌, "메서드명"만 작성하여 발생한 문제.2. delete 의 반환타입은 BOOELAN 인데 int 로 작성하여 발생3. 같은 WebConfig 파일 존재 (클래스 명 동일) / 있는 줄 모르고 새로 생성함 해결1,2,3 번 전부 수정해주니 해결됨.아마 3번이 에러에 가장 직접적인 영향이었던 듯 보인다.
CTE란?CTE 는 공통 테이블 표현식으로 SQL 에서 쿼리를 작성할 때 사용되는 일종의 임시 테이블이다.주로 복잡한 쿼리를 더 간단하고 가독성이 좋게 작성하기 위해 사용된다. WITH 테이블 AS ( 테이블을 사용할 쿼리문); WITH 멤버 AS ( SELECT NAME FROM MEMBER )SELECT * FROM 멤버
PostgreSQL 에는 NVL 이 없다. COALESCE 사용NVL 이나 IFNULL 대신 COALESCE 를 사용하면 된다.SELECT coalesce(profile_img,'nothing')FROM member프로필 이미지가 전부 없어서 nothing 으로 나옴 ㅎㅎ.. Redundant code in COALESCE call 발생 경우컬럼이 Not null 은 아닌지 확인해보자. not null 일 경우, null 이 절대 발생하지 않아 두번째 값으로 대체 될 일이 없다.
각각 DB에는 장단점이 있는 것처럼 ... postgreSql 에서는 변수 사용이 복잡하다.MariaDB 는 SET 변수명 으로 간단하게 선언이 가능한데 .. (보러가기 클릭)PostgreSQL 은 그렇지 않다. 콘솔 변수 사용방법여러가지 방법이 있지만, 그나마 간단해 보이는 with 임시 테이블을 사용하는 방법을 설명하겠다. with 변수 as ( select '값' as 변수명 select 'skylar' as vName)select *from 테이블명 where member_name = (select vName from 변수); WITH 사용 예시실제 사용 사례는 다음과 같다.with 변수 as ( select '2411020001' as vGroup_id), this_week AS..
CORS 코드 해결법 1탄 보러가기 https://skylarcoding.tistory.com/128 Network Error (CORS error) 해결방법오류메세지 Network Error AxiosError: Network Error at XMLHttpRequest.handleError (webpack-internal:///./node_modules/axios/lib/adapters/xhr.js:172:14) 위와같은 오류메세지. demo 폴더에 WebConfig.java에다가 아래 코드를 생성해줬skylarcoding.tistory.com CORS 를 다루며 혼자 깨달은건, 보안적인 부분을 위해 해당 spring 프로젝트를 어디서 사용할 지 설정해주는 것이라고 생각하면 될 것 같다. 디버깅 추가우..
쿼리문을 작성하다보면 변수로 받아오는 부분에 실제 데이터를 넣어 테스트해야 한다.해당 변수를 실제 값으로 변경해주면, 테스트 할때마다 해당 값을 바꿔줘야 한다. 변경해야하는 부분이 많을때, ctrl+ R 로 replace 해줘도 되지만 다른 부분이 바뀔 염려도 있고 생각보다 번거롭다.아래와 같이 변수를 설정해주면 변수 값을 바꿀때 한번만 바꿔도 된다. 훨씬 찾기도 쉽고. 해당 console 세션에 잠시 변수를 선언하는 방식이라, 시간이 지나면 풀려서 다시 선언해줘야 한다.해당 콘솔 외에는 사용할 수 없기도 하다. SET @vTEST = 'skylar';SELECT * FROM MEMBERWHERE USER_ID = @vTEST ;