MySQL ERROR 1064 / 2003 on 'locolhost' (10061) 해결법 문제상황 디렉터리에 있는 sql 파일을 실행시키려고 하는데, Error 1064와 Error 2003 이 발생하고 있다. 기본적으로 서비스에서 동작중인 mysql 과 혹시 몰라서 mariadb 도 모두 재실행 시켜주었고, DB 사용자 계정에 locolhost 권한을 안 주었던 것이 문제인가 싶어서 권한을 주었다. locol host 주고 flush privileges 해주고 난 다음 다시 시도하니까 오류가 해결되었다. [검색] 공부하기/Error 2023.07.19
MySQL { 버전, 현재날짜, Query 의 특징, DBMS 에 있는 데이터베이스 확인, 사용중인 데이터베이스 전환 } MySQL 버전 출력하기, 현재 날짜 출력하기 select version(), current_date; 를 실행하면 다음과 같은 화면이 나오게 됩니다. (mysql 로 실행했는데 MariaDB 가 설치되어있다보니까 MariaDB의 버전이 출려되네요. ) Query 의 특징 우선 몇가지 리마인드를 하고 진행하겠습니다. - SQL은 우선 모든 명령이 ; 세미콜론으로 끝납니다. - SQL은 SQL 이라고 쓰지만 쿼리라고 읽습니다. - SQL은 DBMS에게 명령을 내릴 때 사용하는 언어입니다. - Select 는 무엇인가를 조회할 때 사용하는 키워드입니다. - 키워드(select 같은)들은 대소문자를 구별하지 않습니다. - 여러 문장을 한 줄에 연속으로 붙여서 실행이 가능합니다. 각 문장에 세미콜론 ; 만 붙여.. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.19
MySQL { Database 생성하기, 사용자 생성과 권한 주기, DB접속, 연결끊기 } Database 생성하기 콘솔에서 다음과 같이 명령을 실행합니다. mysql -uroot -p 라는 명령입니다. MySQL 관리자 계정인 root 로 데이터베이스 관리 시스템에 접속하겠다는 명령입니다. -p 에 추가적으로 비밀번호를 입력해도 되지만 저 명령을 우선 실행한 다음 Enter password : 가 나오면 비밀번호를 입력할 수도 있습니다. 실제로 명령 프롬프트 화면에서 진행해 보았습니다. 만약 mysql 명령어가 실행되지 않는다면 시스템 환경변수 설정을 제대로 했는지 확인을 해보아야 합니다. root 계정으로 mysql 에 접속했다면 데이터베이스를 만들어야 겠죠. 데이터베이스를 만드는 명령어는 create database DB이름; 입니다. 굉장히 직관적이어서 좋네요. 사용자 생성과 권한 주기.. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.19
앤티티 클레스와 repository 활용 테스트 { CRUD } 테스트 코드를 통한 CRUD 연습 작성한 MemoRepository 를 이용해서 작성된 테이블에 SQL 없이 CRUD 작업을 테스트해 봅니다. JpaRepository 를 상속받으면 다음 메서드를 활용할 수 있습니다. 특이하게도 insert와 update 작업에 사용하는 메서드가 동일하게 save( )를 이용하는데 이는 JPA의 구현체가 메모리상(Entity Manager 라는 존재가 엔티티들을 관리하는 방식)에서 객체를 비교(데이터베이스와 entity 를 비교한다)하여 데이터베이스에 존재하지 않는다면 insert, 존재한다면 update 를 동작시키는 방식으로 동작하기 때문입니다. 테스트 코드는 프로젝트 생성 시에 만들어진 test 폴더를 이용해서 'repository' 패키지를 작성하고 MemoRep.. [그린컴퓨터] Server/Spring 2023.07.19
SQL { 개요, 3가지 분류 } 수업목표 사람과 사람이 대화하기 위해서는 언어가 필요합니다. DBMS에게 명령을 내릴 때도 특별한 명령이 필요합니다. 이 명령을 SQL 이라고 합니다. 이번 시간엔 SQL에 대한 개념을 알아보고, 직접 데이터베이스 사용자와 데이터베이스를 생성해보도록 하겠습니다. SQL 이란? SQL 은 Structured Query Language 로 구조적 쿼리 언어입니다. SQL 은 데이터를 보다 쉽게 검색, 추가, 삭제, 수정 같은 조작을 할 수 있도록 고안된 컴퓨터 언어입니다. 관계형 데이터베이스에서 데이터를 조작하궈 쿼리하는 표준 수단이라고 할 수 있습니다. SQL 의 이름이 어떻게 생겨났는지는 다음 URL 에서 자세하게 알아볼 수 있다. https://www.ciokorea.com/print/35385 SQL.. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18
mysql 설치 mysql 설치 다음 url 참조 https://www.boostcourse.org/web316/lecture/16717?isDesc=false 출처 : boostcourse 웹 프로그래밍(풀스택) https://www.boostcourse.org/web316/lecture/20655?isDesc=false [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18
Mysql { DB 와 DBMS란? } 수업목표 프로그램에서 다루는 데이터가 많아질수록, 그 데이터를 동시에 사용하는 사람이 많아질수록 데이터의 관리는 어려워진다. 이러한 방대해지는 데이터를 쉽고 편리하게 다룰 수 있도록 등장한 것이 DBMS 입니다. 이번 시간에는 데이터베이스와 데이터베이스 매니지먼트 시스템에 대해서 알아보도록 하겠습니다. 데이터베이스 & 데이터베이스 관리 시스템 { 정의 & 특성 } 데이터베이스는 무엇인가요? 데이터베이스 관리 시스템은 무엇인가요? 책과 사서를 예시로 이해해보겠습니다. 책 한권 한권이 데이터베이스라고 한다면 책들을 관리해주는 사서는 데이터베이스 관리 시스템이라고 말할 수 있습니다. 우리가 배우는 것은 데이터베이스 관리 시스템입니다. 하나씩 좀 더 살펴보도록 하겠습니다. 1) 데이터베이스 정의 데이터베이스는 .. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18
JSTL { 흐름제어 태그 redirect, 코어태그:기타태그 out } JSTL 흐름제어 태그 redirect 문법 우리가 앞서서 response.sendRedirect( ) 를 배웠었는데요. 유사합니다. redirect 문법을 보면 redirect 할 url 을 넣어주면 되고, param 을 통해서 전달할 파라미터를 지정할 수 있습니다. JSTL 흐름제어 태그 redirect 실습 우선 jstl 을 사용할 거기 때문에 지시자를 설정해주었구요. redirect 태그를 사용해서 이전에 작성했던 jstl05 주소로 이동하도록 설정했습니다. jstl06 을 실행시켜보면 바로 jstl05 로 redirect 되는 것을 확인할 수 있습니다. JSTL 코어 태그 : 기타태그 out 문법 기타 태그인 out 은 JspWriter 에 출력하는 방법인데요. 이미 태그가 있는 문자열들을 출력.. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18
JSTL { 흐름제어태그 forEach, import } JSTL 흐름제어태그 forEach 문법 forEach 를 사용하면 배열이나 Collection 자료구조에서 하나씩 꺼내올 수 있습니다. 마치 for 문 처럼 반복할 횟수를 정해줄 수도 있습니다. 문법을 살펴보겠습니다. forEach 태그를 사용하면 되는데요. items 는 근원지입니다. 즉 꺼내올 대상입니다. items 에 올 수 있는 것들은 collection 자료구조의 다양한 것들이 올 수 있습니다. 이 items 에는 여러 개가 있잖아요. 하나씩 꺼낼 때 쓸 변수가 var 입니다. begin 과 end 는 값을 읽어올 인덱스의 시작값과 끝값입니다. begin 이나 end 가 없다면 items 의 모든 것들을 꺼내오게 됩니다. JSTL 흐름제어태그 forEach 실습 List 와 ArrayList .. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18
JSTL { 변수지원태그 target & property & value, 흐름제어태그 if & choose } JSTL 변수지원태그 : 프로퍼티, 맵의 처리 변수지원태그를 프로퍼티나 맵을 처리할 수 있습니다. 우리가 자바를 공부할 때 객체 프로퍼티라는 것은 객체의 값을 변경하거나 값을 읽어드리기 위한 getter, setter 메서드를 생각하면 됩니다. 무슨 말이냐면 위의 코드를 잠깐 보겠습니다. 라는 코드를 동작시키면 실제로 some 객체의 setter 메서드를 방금 지정한 value 로 실행시킵니다. 즉 some.setPropertyName(anyvalue) 가 실행된다는 의미입니다. some 객체가 맵(map)일 경우에는 some.put(propertyName, anyValue) 가 실행됩니다. JSTL 흐름제어 태그 : if 자바의 if 와는 다르게 else 에 대한 처리는 없습니다. 사용하는 문법은 다음.. [Boostcourse] 풀스택/웹 프로그래밍(풀스택) 2023.07.18