GRANT, REVOKE GRANT CREATE USER TO kim; REVOKE CREATE USER FROM kim; GRANT : USER 또는 OBJECT에 권한을 부여 REVOKE : USER 또는 OBJECT 권한을 회수 ex) 테이블을 만들기 위해서는 테이블을 만들 수 있는 권한을 가진 계정이어야 한다. 권한은 CMD창에서도 줄 수 있다. SYSTEM 권한 : DATABASE의 OBJECT들을 생성(CREATE),수정(ALTER),삭제(DROP)할 수 있는 권한 OBJECT 권한 : OBJECT 내용을 추가(INSERT),변경(UPDATE),삭제(DELETE),검색(SELECT)할 수 있는 권한 - OBJECT : TABLE,SEQUENCE,VIEW ROLE : 권한을 담고 있음 DICTI..
ddl(data difinition language) - create, alter, drop, rename - 테이블 복사 A테이블의 데이터를 새로운 B테이블에 '복사'할 수 있다. CREATE TABLE ANALYST (NUM,NAME,JOB,DNUM) AS SELECT PNO,PNAME,JOB,DNO FROM PERSONNEL WHERE JOB='ANALYST'; 기존의 PERSONNEL 테이블에서 WHERE조건을 통해 해당되는 값만 복사하여 ANALYST라는 테이블을 만들었다. CREATE TABLE을 통해 새로운 테이블을 만들며 AS 역시 'INSERT INTO'의 경우 기존에 있는 테이블에 넣기에 입력하지 않지만 지금은 새롭게 만드므로 입력한다. 컬럼명도 괄호 내에서 새롭게 임의로 입력할 수 있..
Any, All ANY : 최솟값과 최댓값 사이의 범위가 포함 ALL : 범위값 포함하지 않음 가령, 120 ~ 180 인 범위가 있다면 < ANY : 180보다 작은 데이터 (=최댓값보다 작은) ANY < : 120보다 큰 데이터 < ALL : 120보다 작은 데이터 (=최솟값보다 작은) ALL < : 180보다 큰 데이터 UPDATE UPDATE 컬럼명 SET 변결할내용 WHERE 변경조건; (변경조건을 주지 않으면 컬럼 전체가 변경되니 주의해야 한다!) 상관커리 (EXIST) 바깥테이블과 안의 테이블이 다르다. SELECT USERID,USERNAME,ADDR1,SCHOL FROM CUSTOM WHERE EXISTS (SELECT * FROM COMPANY WHERE USERID=CUSTOM.USE..
EQUI JOIN SELECT A.USERID,USERNAME,ADDR1,COMPANY,DEPT,POSIT,PAY FROM CUSTOM A,COMPANY B WHERE A.USERID=B.USERID; A와 B는 테이블의 별칭을 만들어준 것. 이에 따라 SELECT 뒤의 USERID는 A,B테이블에 각각 있으니(어차피 값 같으므로) 한쪽에 임의로 주었다. WHERE는 조건 INNER JOIN SELECT A.USERID,USERNAME,ADDR1,COMPANY,DEPT,POSIT,PAY FROM CUSTOM A INNER JOIN COMPANY B ON A.USERID=B.USERID; FROM 뒤에서 ',' 표시인 EQUI JOIN과 달리 'INNER JOIN'을 입력한다. 'INNER'는 생략가능하다..
오늘은 함수를 살펴보겠다! 숫자, 문자 등 타입마다 다양한 함수들의 대표 사례를 확인할 것이다. 숫자 함수 괄호 안 : (숫자,자리수) - ROUND (반올림) SELECT ROUND(34.275,1) FROM DUAL; -> 34.3 SELECT ROUND(34.275,-1) FROM DUAL; -> 30 - TRUNC (절삭) SELECT TRUNC(34.275,1) FROM DUAL; -> 34.2 - CEIL/FLOOR(올림/내림) : 정수로만 반환한다. SELECT CEIL(34.275) FROM DUAL; -> 35 --ABS(절대값) SELECT ABS(-123) FROM DUAL; ->123 --SIGN(양수 1,음수 -1,0은 0) SELECT SIGN(100),SIGN(-100),SIG..
오라클은 ';'을 기준으로 결과값이 나온다 Ctrl과 Entre키를 함께 눌러줘야 한다. SELECT * FROM TAB; 테이블을 보여준다 SELECT 컬럼명 FROM 테이블명; 해당 테이블에서 입력한 컬럼들만 나타난다. (컬럼1,컬럼2 이런 식으로 입력해야 한다. 다만 띄어쓰기 하지 않아야 한다.) SELECT DISTINCT 컬럼명 FROM 테이블명; DISTINCT -> 해당 컬럼 값들 중 '중복을 제외'한 값들만 도출 SELECT 컬럼1,컬럼2,컬럼3 FROM 테이블명 ORDER BY 컬럼2; 컬럼2의 값을 기준으로 오름차순 정렬된다. (컬럼2 옆에 ASC를 써줘도 오름차순되지만 안써도 기본이 오름차순! 내림차순은 DESC) SELECT 컬럼1,컬럼2,컬럼2+1000 FROM 테이블명; 쿼리의 ..
자바와 프로젝트가 끝나고 오라클 수업이 시작되었다! 데이터베이스에 대한 기초적인 지식을 배웠다. 기본 풀버전이 아닌 EX버전으로 교육한다고 하셨다. 기능적으로 큰 차이는 없다! 오라클 설치 과정 지식 오라클의 관리자 계정은 sys와 system 2가지이다. sys와 system의 차이는 DB를 끌 수(shutdown)있느냐의 유무이다. sys만이 이 기능을 가지고 있다. 그 외의 권한은 같다. 프로그램 설치 후 command창에서 계정을 sqlplus system/(지정한 비밀번호)로 로그인할 수 있으며 sys의 경우, sqlplus sys/dba 에서 추가로 as sysdba를 덧붙여야 한다. SYS@XE 는 XE라는 서버에 SYS가 로그인을 했다는 의미이다. 계정을 만들기 위해선 관리자 계정만이 가능..
드디어 JAVA 수업 기간이 끝났다 !! 그동안 배운 것을 바탕으로 2인 1조로 이틀동안 자바 프로젝트를 진행하였다. 앉은 자리대로 나는 옆자리 동기와 함께 했다! 내용 구상과 코드를 짜야한다는 점에서 시간이 촉박하기도 했지만 자바 내용을 복습하기 위함이기에 배운 것을 활용하여 만들려고 하였다. JAVA 첫 프로젝트 팀원분께서 '쇼핑몰'의 회원가입 문법을 언급하셨고 나는 자바의 랜덤 문법을 활용할 수 있도록 '랜덤박스 증정 이벤트'와 리본상자 모양을 보여줄 스레드 문법을 제안하였다. 즉, 회원가입한 고객을 대상으로 랜덤박스 이벤트를 기획하는 것이다! 기획은 1시간만에 빠르게 정해져서 코딩을 금방 시작할 수 있었다. 세상공정하게 사다리타기로 각자 코딩할 부분을 정하고(ㅋㅋㅋ) '각코'를 시작하였따 하다보면..
Class 클래스 클래스의 이름이 클래스인 것이다. 이는 특정 클래스 혹은 인터페이스의 정보를 검색할 수 있는 메소드를 지닌다. class Test{ public void write() { System.out.println("테스트..."); } } 먼저 Test클래스의 write 메소드를 작성하였다. 이후 Test1 클래스의 메인절에서 Class.forName 메소드를 통해 불러올 테스트의 경로를 입력한다. c는 그 곳에서 불러온 클래스이다. newInstance는 Test 클래스를 객체 생성한 것이며 클래스보다 상위인 Object에 이를 담는다. Test의 write 메소드를 부르기 위해선, Object로 담았던 것들 다시 형변환한다. 즉, Class.forName을 통해 클래스를 부를 수 있다는 것..