ORA-12519 error 에러 발생시 해결점 


원인 : DB에 접속하는 커넥션 프로세서 수의 오버


sqlplus 를 관리자 권한으로 접속 후 

ex)

sqlplus 관리자ID/관리자PW as sysdba

ALTER system SET processes=1000 scope=spfile;

shutdown immediate;

startup




SELECT column_name,column_name

FROM table_name;


SELECT DISTINCT column_name,column_name

FROM table_name;


SELECT column_name,column_name

FROM table_name

WHERE column_name operator value;


Operator Description

= Equal

<> Not equal. Note: In some versions of SQL this operator may be written as !=

> Greater than

< Less than

>= Greater than or equal

<= Less than or equal

BETWEEN Between an inclusive range

LIKE Search for a pattern

IN To specify multiple possible values for a column


The AND operator displays a record if both the first condition AND the second condition are true.


The OR operator displays a record if either the first condition OR the second condition is true.


SELECT column_name,column_name

FROM table_name

ORDER BY column_name,column_name ASC|DESC;


INSERT INTO table_name

VALUES (value1,value2,value3,...);


INSERT INTO table_name (column1,column2,column3,...)

VALUES (value1,value2,value3,...);


UPDATE table_name

SET column1=value1,column2=value2,...

WHERE some_column=some_value;


DELETE FROM table_name

WHERE some_column=some_value;


DELETE FROM table_name;

or

DELETE * FROM table_name;


SELECT TOP number|percent column_name(s)

FROM table_name;


MySQL Syntax

SELECT column_name(s)

FROM table_name

LIMIT number;


Oracle Syntax

SELECT column_name(s)

FROM table_name

WHERE ROWNUM <= number;


SELECT column_name(s)

FROM table_name

WHERE column_name LIKE pattern;


SELECT column_name(s)

FROM table_name

WHERE column_name IN (value1,value2,...);


SELECT column_name(s)

FROM table_name

WHERE column_name BETWEEN value1 AND value2;


SQL Alias Syntax for Columns


SELECT column_name AS alias_name

FROM table_name;

SQL Alias Syntax for Tables


SELECT column_name(s)

FROM table_name AS alias_name;



http://www.w3schools.com/sql/sql_join.asp




My SQL / Oracle:

ALTER TABLE table_name

MODIFY COLUMN column_name datatype


Oracle 10G and later:

ALTER TABLE table_name

MODIFY column_name datatype

이전글: DataBase 수업내용 Preview


[주석문]

-- 오라클 한줄 주석문

/* 오라클 여러줄 주석문 */


[오라클 자료형 타입]

1. 정수형 자료형: number(총 자리수, 소수점 자리수)

2. 가변형 문자열; varchar2

3. 고정형 문자열: char

4. 날짜형: date

cf) int 는 오라클 자료형이 아니다

cf) MySQL 에서 text 자료형은 문자열 자료형

    datetime 자료형은 날짜형 자료형


[제약조건]

1. 필드에 자료 저장시 제한을 가하는 것

2. 기본키 제약조건(primary key)의 특징

가. 자료의 중복 불가. 즉 중복 레코드 금지 중복 번호값 저장 금지

(레코드란 한 행의 데이터베이스에 저장된 자료 집합을 말함)

나. null값 금지

3. not null 제약조건의 특징

가. null 금지

4. default 제약조건의 특징

가. 필드에 default 0 으로 주면 다른 필드에 레코드 저장 시 기본값으로 0이 저장됨

5. varchar2 는 가변형 문자열 자료형

6. number(30)은 오라클 정수형 자료형 타입, 최대자리수가 30인 정수형 번호값을 저장할 수 있다


[오라클 테이블 만들기]

create table 테이블명(

필드명(열명) 자료형(크기) 제약조건,

...중략...,

필드명 자료형(크기) 제약조건

);


필드명에 최종적인 자료(레코드)가 저장된다.



create table guestbook(

no int primary key,

name varchar2(30),

title varchar2(200),

pwd varchar2(30),

cont varchar2(4000),

hit int default 0,

regdate date

);

-- no, name, title, pwd, cont, hit, regdate 필드명에 최종적인 레코드(자료)가 저장된다



[오라클 시퀀스(오라클 월말 평가 예상문제)]

1. 시퀀스는 자동 번호 발생기다. 즉 1부터 1씩 증가하는 정수형 숫자 번호를 저장할 때 주로 사용한다

2. 시퀀스는 중복 번호값이 발생되지 않고 null값이 없다. 그러므로 주로 primary key로 지정된 필드에 사용한다

3. 시퀀스는 한번 발생된 번호값은 다시 발생되지 않는다.

4. 시퀀스에서 다음 번호값을 가져오려면 시퀀스이름.nextval 로 가져온다


create sequence guestbook_no_seq // guestbook_no_sql란 이름의 시퀀스를 만든다

increment by 1 start with 1 nocache; // 1부터 시작 1씩 증가, 임시 메모리(nocache)를 사용하지 않는다


cf.Oracle의 sequence 는  MySQL auto_increment 와 대응

auto_increment 제약조건은 1부터 1씩 증가하는 정수형 숫자 번호값을 저장, 중복 번호값이 없고 null값 저장 금지



[테이블에 레코드 저장하기]

insert into 테이블명(필드명 ... 중략 ... ) valuses (값);


insert into guestbook(no,name,title,pwd,cont,regdate) 

values(guestbook_no_seq.nextval,'홍길동','방명록 제목01','777','내용01',sysdate);

// 자료 저장 시 쿼리문에서 문자열은 작은 따옴표로 감싼다


[오라클 날짜함수(월말평가 예상문제)]

sysdate 날짜함수로 년월일 시분초 값을 저장

cf. MySQL 날짜함수는 now();


[레코드 검색]

select * from 테이블명;


select * from guestbook;




select count(b_no) from board7"; // 월말평가 오라클 문제 : 오라클에서 count()함수는 총 레코드 개수를 반환하는 함수


select rownum rnum,b_no,b_name from board7 order by b_ref desc,b_level asc

//오라클에서 rownum은 검색된 행의 개수를 저장. rownum의 별칭을 rnum으로 지정



[레코드 정렬문(월말평가 예상문제)]

1. order by no asc: no 필드 기준으로 오름차순 정렬, asc 는 정렬 기본값으로 생략 가능

2. order by no desc: no 필드 번호값을 기준으로 내림차순 정렬, 내림차순 정렬 시 desc는 생략불가


select no,name from guestbook order by no desc;


[레코드 수정문(월말평가 예상문제)]

update 테이블명

set 필드명=변경값,필드명=변경값

where 조건식;


update guestbook

set name='강감찬', cont='수정할 내용'

where no=1;

-- no 필드 1번을 기준으로 이름을 강감찬, 내용을 '수정할 내용'으로 갱신


select name,cont from guestbook where no=1;

-- no필드 1번을 기준으로 이름과 내용을 검색


[레코드 삭제문]

delete from 테이블명 where 조건식;


delete from guestbook where no=2;

-- no 필드 2번 레코드를 기준으로 삭제




+ Recent posts