[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL T-SQL 문법 5.3 JAVA 프로그래밍 2

Similar documents
PowerPoint 프레젠테이션

10.ppt

Spring Boot/JDBC JdbcTemplate/CRUD 예제

13주-14주proc.PDF

쉽게 풀어쓴 C 프로그래밊

예제소스는 에서다운로드하여사용하거나툴바의 [ 새쿼리 ]( 에아래의소스를입력한다. 입력후에는앞으로실습을위해서저장해둔다. -- 실습에필요한 Madang DB 와 COMPANY DB 를모두생성한다. -- 데이터베이스생성 US

Connection 8 22 UniSQLConnection / / 9 3 UniSQL OID SET

@OneToOne(cascade = = "addr_id") private Addr addr; public Emp(String ename, Addr addr) { this.ename = ename; this.a

DBMS & SQL Server Installation Database Laboratory

PowerPoint 프레젠테이션

FileMaker 15 ODBC 및 JDBC 설명서

FileMaker ODBC 및 JDBC 가이드

슬라이드 1

IBM blue-and-white template

untitled

FileMaker ODBC and JDBC Guide

1. 자바프로그램기초 및개발환경 2 장 & 3 장. 자바개발도구 충남대학교 컴퓨터공학과

윈도우시스템프로그래밍

Microsoft PowerPoint - 10Àå.ppt

Windows 8에서 BioStar 1 설치하기

rmi_박준용_final.PDF

A. 다운로드 에접속한다. 검색창에 sql server 0 express 를입력하고검색을클릭한다. 검색결과중 [MicrosoftR SQL ServerR 0 서비스팩 (SP) Express] 를선택한

Microsoft PowerPoint - GUI _DB연동.ppt [호환 모드]

자바-11장N'1-502

FileMaker ODBC and JDBC Guide

02 C h a p t e r Java

8 장데이터베이스 8.1 기본개념 - 데이터베이스 : 데이터를조직적으로구조화한집합 (cf. 엑셀파일 ) - 테이블 : 데이터의기록형식 (cf. 엑셀시트의첫줄 ) - 필드 : 같은종류의데이터 (cf. 엑셀시트의각칸 ) - 레코드 : 데이터내용 (cf. 엑셀시트의한줄 )

1. 데이터베이스프로그래밍의개념 2. PL-SQL 3. 데이터베이스연동자바프로그래밍 4. 데이터베이스연동웹프로그래밍

PowerPoint 프레젠테이션

Microsoft PowerPoint - Supplement-03-TCP Programming.ppt [호환 모드]

SQL Developer Connect to TimesTen 유니원아이앤씨 DB 기술지원팀 2010 년 07 월 28 일 문서정보 프로젝트명 SQL Developer Connect to TimesTen 서브시스템명 버전 1.0 문서명 작성일 작성자

B.3 JDBC 설치 JDBC Java DataBase Connectivity 는자바에서 DBMS의종류에상관없이일관된방법으로 SQL을수행할수있도록해주는자바 API Application Program Interface 다. 이책에서는톰캣과 SQL Server 간의연결을위

Microsoft PowerPoint - 04-UDP Programming.ppt

untitled

歯JavaExceptionHandling.PDF

윈도우시스템프로그래밍

6장. SQL

목차 BUG DEQUEUE 의 WAIT TIME 이 1 초미만인경우, 설정한시간만큼대기하지않는문제가있습니다... 3 BUG [qp-select-pvo] group by 표현식에있는컬럼을참조하는집합연산이존재하지않으면결괏값오류가발생할수있습니다... 4

Spring Data JPA Many To Many 양방향 관계 예제

웹연동 } 웹 (Web) 환경에서데이터베이스시스템을연동하는방법은다음과같다 } Server Client 구조의통신 (2-Tier) } Server Middleware Client 구조의통신 (3-Tier) 2

PowerPoint 프레젠테이션

Microsoft PowerPoint - 03-TCP Programming.ppt

- 다음은 Statement 객체를사용해서삽입 (insert) 작업의예 String sql = "insert into member(code, name, id, pwd, age) values ("; int id = 10; sql = sql + id +, ;// 항목사이에

MySQL-Ch10

목차 BUG 문법에맞지않는질의문수행시, 에러메시지에질의문의일부만보여주는문제를수정합니다... 3 BUG ROUND, TRUNC 함수에서 DATE 포맷 IW 를추가지원합니다... 5 BUG ROLLUP/CUBE 절을포함하는질의는 SUBQUE

MySQL-.. 1

강의 개요

PowerPoint 프레젠테이션

<C1A62038B0AD20B0ADC0C7B3EBC6AE2E687770>

게시판 스팸 실시간 차단 시스템

I T C o t e n s P r o v i d e r h t t p : / / w w w. h a n b i t b o o k. c o. k r

Microsoft PowerPoint - 3장-MS SQL Server.ppt [호환 모드]

3 S Q L A n t i p a t t e r n s Trees/intro/parent.sql CREATE TABLE Comments ( comment_id SERIAL PRIMARY KEY, parent_id BIGINT UNSIGNED, comment TEXT

Java ...



Microsoft PowerPoint - QVIZMVUMWURI.pptx

PowerPoint 프레젠테이션

단답형 (26 회기출문제 ) 1. 아래와같은테이블이있을때아래의 SQL 결과에대해서 Oracle, SQL Server 순서로적으시오 TAB1 COL1 CHAR(10) COL2 CHAR(10) INSERT INTO TAB1 VALUES ('1',''); INSERT INT

PowerPoint Presentation

슬라이드 제목 없음

PowerPoint 프레젠테이션

<C0CCBCBCBFB52DC1A4B4EBBFF82DBCAEBBE7B3EDB9AE2D D382E687770>

Microsoft PowerPoint - Java7.pptx

10 강. 쉘스크립트 l 쉘스크립트 Ÿ 쉘은명령어들을연속적으로실행하는인터프리터환경을제공 Ÿ 쉘스크립트는제어문과변수선언등이가능하며프로그래밍언어와유사 Ÿ 프로그래밍언어와스크립트언어 -프로그래밍언어를사용하는경우소스코드를컴파일하여실행가능한파일로만들어야함 -일반적으로실행파일은다

Microsoft Word - 05_SUBPROGRAM.doc

Microsoft PowerPoint - chap01-C언어개요.pptx

에접속하여상단메뉴에서 [DOWNLOADS] 를클릭한다. 다운로드페이지에서 Java 카테고리에있는 [Java SE] 를클릭하고페이지가바뀌면 [Java Platform (JDK)] 를클릭한다. JDK 버전은다운로드하는시점에따라다를수

PowerPoint 프레젠테이션

Microsoft PowerPoint 자바-기본문법(Ch2).pptx

A SQL Server 2012 설치 A.1 소개 Relational DataBase Management System SQL Server 2012는마이크로소프트사에서제공하는 RDBMS 다. 마이크로소프트사는스탠다드 standard 버전이상의상업용에디션과익스프레스 exp

Ç¥Áö

Microsoft Word - SQL튜닝_실습교재_.doc

교육2 ? 그림

Chapter 1

q 이장에서다룰내용 1 객체지향프로그래밍의이해 2 객체지향언어 : 자바 2

1. Windows 설치 (Client 설치 ) 원하는위치에다운받은발송클라이언트압축파일을해제합니다. Step 2. /conf/config.xml 파일수정 conf 폴더에서 config.xml 파일을텍스트에디터를이용하여 Open 합니다. config.xml 파일에서, 아

PowerPoint 프레젠테이션

뇌를자극하는 SQL Server 2012 (1 권 ) 1 권 : 기본편 < 이것만은알고갑시다 > 모범답안 1 장 1. (1) Microsoft (2) Oracle (3) IBM (4) Oracle (5) Micr

iii. Design Tab 을 Click 하여 WindowBuilder 가자동으로생성한 GUI 프로그래밍환경을확인한다.

데이터베이스_오라클_부록(최종).indd

PowerPoint Presentation

* Factory class for query and DML clause creation * tiwe * */ public class JPAQueryFactory implements JPQLQueryFactory private f

슬라이드 1

Interstage5 SOAP서비스 설정 가이드

var answer = confirm(" 확인이나취소를누르세요."); // 확인창은사용자의의사를묻는데사용합니다. if(answer == true){ document.write(" 확인을눌렀습니다."); else { document.write(" 취소를눌렀습니다.");

1217 WebTrafMon II

< FC8A8C6E4C0CCC1F620B0B3B9DF20BAB8BEC8B0A1C0CCB5E5C3D6C1BE28C0FAC0DBB1C7BBE8C1A6292E687770>

Microsoft Word - ntasFrameBuilderInstallGuide2.5.doc

ORANGE FOR ORACLE V4.0 INSTALLATION GUIDE (Online Upgrade) ORANGE CONFIGURATION ADMIN O

Microsoft Word - PLSQL.doc

JAVA 프로그래밍실습 실습 1) 실습목표 - 메소드개념이해하기 - 매개변수이해하기 - 새메소드만들기 - Math 클래스의기존메소드이용하기 ( ) 문제 - 직사각형모양의땅이있다. 이땅의둘레, 면적과대각

신림프로그래머_클린코드.key

untitled

쉽게

<4D F736F F F696E74202D20C1A63235C0E520B3D7C6AEBFF6C5A920C7C1B7CEB1D7B7A1B9D628B0ADC0C729205BC8A3C8AF20B8F0B5E55D>

슬라이드 1

PowerPoint Presentation

데이터베이스_오라클_부록(최종).indd

ALTIBASE HDB Patch Notes

Transcription:

5 장 SQL 응용 데이터베이스실험실 1

[ 목차 ] 5.1 데이터베이스프로그래밍개념 5.2 T-SQL 5.2.1 T-SQL 문법 5.3 JAVA 프로그래밍 2

5.1 데이터베이스프로그래밍개념 프로그래밍 이라고하면프로그램소스를설계하고, 작성하고, 디버깅하는과정을말한다. 프로그램 혹은소프트웨어는컴퓨터에서주어진작업을하는명령어나열을말한다. 데이터베이스프로그래밍은명확한정의는없지만데이터베이스에데이터를정의하고, 저장된데이터를읽어오며, 데이터를변경하는프로그램을작성하는것을말한다. 데이터베이스프로그래밍은데이터베이스언어인 SQL 언어를이용하는점이일반프로그래밍과다른점이다. SQL Interface (SQL) 응용프로그램 (SQL + Java) MSSQL DB MSSQL DB SQL 인터페이스와데이터베이스프로그래밍비교 3

- 데이터베이스프로그래밍방법 (1) 일반프로그래밍언어 : 호스트언어가 Java, C++, C 등일반프로그래밍언어인경우이다. 일반프로그래밍언어로작성된응용프로그램에서데이터베이스에저장된데이터를관리 / 검색하는방법으로 SQL 문을컴파일러가처리한다. (2) 웹프로그래밍언어 : 웹브라우저에서데이터를관리하고검색하는응용의경우호스트언어가 JSP, ASP, PHP 등웹스크립트언어인경우이다. (3) SQL 전용언어 : SQL 언어를확장하여변수, 제어, 입출력등기능을추가한새로운언어로데이터베이스를다루는기능이뛰어나다. MSSQL 은 T- SQL 이라는이름의언어를사용하며 Oracle 데이터베이스는 PL/SQL 이라는언어를사용한다. (4) 4GL(4th Generation Language) : 데이터베이스관리기능과비주얼프로그래밍기능을갖춘언어로 Delphi, Power Builder, Visual Basic 등이있다. 4

- 데이터베이스프로그래밍방법 Program Language - Java - C, C++ Web Program - JSP, ASP - PHP SQL 전용언어 -T-SQL - PL/SQL 4G Language - Delphi -VB 파일 Access MSSQ L Oracle MySQL DB2 DB DB DB DB DB 윈도우즈 Linux Unix 인텔 HP Sun IBM 5

5.2 T-SQL 5.2.1 T-SQL 문법 (1/2) 구분 명령어 DDL DCL DML CREATE, ALTER, DROP GRANT, DENY, REVOKE SELECT, INSERT, DELETE, UPDATE CHAR(n) VARCHAR(n) 데이터타입 INT NUMERIC(p,s) DATE, TIME 변수 @ 를사용, DECLARE 문으로선언, SET 문으로치환 산술연산자 (+, -, *, /, %) 연산자 비교연산자 (=, <, >, >=, <=, <>) 문자열연산자 (+) 논리연산자 (NOT, AND, OR) 6

5.2.1 T-SQL 문법 (2/2) 구분 명령어 주석 --, /* */ BEGIN... END IF... ELSE 제어문 CASE... END WHILE - BREAK/CONTINUE GOTO 집계함수 (AVG, COUNT, MAX, MIN, SUM) 함수 날짜함수 (SYSDATETIME, GETDATE) 문자열함수 (CHAR, LEN, LOWER, SUBSTRING) 프로시저 CREATE PROC CREATE FUNCTION 7

5.3 JAVA 프로그래밍 ( 절차및준비사항 ) - SQL Server 2008, - Java 컴파일러 ( 데이터베이스 ) 프로그래머 프로그램사용자 SQL 사용자 1 자바프로그램 4 자바 CLASS 5 PORT 1433 번 SQL Server DBMS 2 3 65 사용자 sa 5 사용자 kim + 자바컴파일러 JDBC Library 7 데이터베이스 COMPANY 8

(MSSQL + JAVA) 연동방법 1/2 /* MSSQL 과자바연동실험프로그램수행을위한준비 1. (MSSQL 2008 express edition 이설치 ) 2. ( 자바컴파일러설치 ) - 자바가설치안되어있는경우자바설치 (java.sun.com) -> Java SE 다운로드및설치 ( Java 6.19 버전의경우 : jdk-6u19-windows-i586.exe ) 자바의 C:\Program Files\Java\jdk1.6.0_19\bin 폴더를환경변수 PATH에추가한다. 내컴퓨터->( 오른쪽마우스 ) 속성-> 고급-> 환경변수->PATH-> 편집->( 추가 ) 내컴퓨터 ->( 오른쪽마우스 ) 속성 -> 고급 -> 환경변수 ->CLASSPATH-> 편집 -> ;. ( 추가 ) 3. (jdbc 복사 )- Java 1.6 은 sqljdbc4.jar 파일을아래폴더에복사한다. ( 다운로드시 sqljdbc4.zip 으로받아지면 sqljdbc4.jar 로이름을변경한다.) 3-1. 자바의 C:\Program Files\Java\jdk1.6.0_19\jre\lib\ext 에복사한다. 3-2. 자바의 C:\Program Files\Java\jre\lib\ext 에복사한다. 4. ( 컴파일및실행 ) C 드라이브에 database 폴더생성후 StatementMSSQL.java 를복사해넣는다. ( 시작 -> 실행 ->cmd 로 DOS 실행창을열어 cd C:\database 명령으로폴더이동 ) DOS 실행창에서 C:\database>javac StatementMSSQL.java DOS 실행창에서 C:\database>java StatementMSSQL 9

(MSSQL + JAVA) 연동방법 2/2 5. MSSQL 접속포트설정시작 -> SQL Server -> 구성도구 -> SQL Server 구성관리자 -> SQL Server 네트워크구성 -> MSSQLSERVER 에대한프로토콜 -> TCP/IP 를 " 사용 " 으로바꾸고 -> (TCP/IP 더블클릭 ) -> IP ALL -> TCP 포트 1433 입력. SQL Server 네트워크구성 -> SQLEXPRESS 에대한프로토콜 -> TCP/IP 를 " 사용 " 으로바꾸고 -> (TCP/IP 더블클릭 ) -> IP ALL -> TCP 포트 1433 입력. 6. MSSQL 인증모드바꾸기 (1) SQL Server Management Studio -> 개체탐색기의 root ( 오른쪽마우스 ) -> 속성 -> 보안 -> "SQL Server및 Windows 인증모드 " 선택 (2) SQL Server Management Studio -> 보안 -> 로그인 -> sa -> ( 암호 / 암호확인 -> duksung), ( 상태-> 로그인-> 사용 ) ( 참고 : 자격증명 에관한오류가있을경우 " 일반 의 " 자격증명 " 체크 ) (3) ( 개체 root) -> ( 오른쪽마우스 ) -> 다시시작 7. 데이터준비 - MSSQL 의 Server Management Studio 를실행시키고 COMPANY 데이터베이스를생성한후스키마 department(deptno, dname, loc) 와데이터입력. *( 참조 ) http://blog.naver.com/cdi1318?redirect=log&logno=90116070140 10

( 자바프로그램작성 ) 1/2 import java.io.*; import java.sql.*; import java.sql.callablestatement; public class StatementMSSQL { Connection con; public StatementMSSQL() { String Driver = ""; String url = "jdbc:sqlserver://localhost:1433;databasename=company;"; String userid = "sa"; String pwd = "duksung"; try { // 드라이버찾기 Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver"); System.out.println(" 드라이버로드성공 "); catch(classnotfoundexception e) { e.printstacktrace(); 11 try { // 데이터베이스를연결 System.out.println(" 데이터베이스연결준비 "); con = DriverManager.getConnection(url, userid, pwd); System.out.println(" 데이터베이스연결성공 "); catch(sqlexception e) { e.printstacktrace();

( 자바프로그램작성 ) 2/2 private void sqlrun() { String query="select deptno, deptname from DEPARTMENT"; try { Statement stmt = con.createstatement(); ResultSet rs = stmt.executequery(query); while(rs.next()) { System.out.print(" DEPARTMENT NO : + rs.getint(1)); System.out.println(" DEPARTMENT NAME : + rs.getstring(2)); con.close(); catch(sqlexception e) { e.printstacktrace(); public static void main(string args[]) { StatementMSSQL so = new StatementMSSQL(); so.sqlrun(); 12

( 샘플스키마및데이터생성 ) 1/2 use duksung; DROP TABLE EMP; DROP TABLE DEPT; -- create TABLES CREATE TABLE DEPT (DEPTNO TinyInt CONSTRAINT PK_DEPT PRIMARY KEY, DNAME VARCHAR(14), LOC VARCHAR(13) ) ; CREATE TABLE EMP (EMPNO Int CONSTRAINT PK_EMP PRIMARY KEY, ENAME VARCHAR(10), JOB VARCHAR(9), MGR SmallInt, HIREDATE DATE, SAL Decimal(7,2), COMM DEcimal(7,2), DEPTNO TinyInt CONSTRAINT FK_DEPTNO REFERENCES DEPT); set nocount on 13

( 샘플스키마및데이터생성 ) 1/2 -- insert DEPT 4 data INSERT INTO DEPT VALUES (10,'ACCOUNTING','NEW YORK'); INSERT INTO DEPT VALUES (20,'RESEARCH','DALLAS'); INSERT INTO DEPT VALUES (30,'SALES','CHICAGO'); INSERT INTO DEPT VALUES (40,'OPERATIONS','BOSTON'); --select count(*) from DEPT -- insert EMP 14 data INSERT INTO EMP VALUES (7369,'SMITH','CLERK', 7902,'12-17-1980',800,NULL,20); INSERT INTO EMP VALUES (7499,'ALLEN','SALESMAN', 7698,'02-20-1981',1600,300, 30); INSERT INTO EMP VALUES (7521,'WARD','SALESMAN', 7698,'02-22-1981',1250,500, 30); INSERT INTO EMP VALUES (7566,'JONES','MANAGER', 7839,'04-02-1981',2975,NULL,20); INSERT INTO EMP VALUES (7654,'MARTIN','SALESMAN',7698,'09-28-1981',1250,1400,30); INSERT INTO EMP VALUES (7698,'BLAKE','MANAGER', 7839,'05-01-1981',2850,NULL,30); INSERT INTO EMP VALUES (7782,'CLARK','MANAGER', 7839,'06-09-1981',2450,NULL,10); INSERT INTO EMP VALUES (7788,'SCOTT','ANALYST', 7566,'07-13-1987',3000,NULL,20); INSERT INTO EMP VALUES (7839,'KING','PRESIDENT', NULL,'11-17-1981',5000,NULL,10); INSERT INTO EMP VALUES (7844,'TURNER','SALESMAN',7698,'09-08-1981',1500,0, 30); INSERT INTO EMP VALUES (7876,'ADAMS','CLERK', 7788,'07-13-1987',1100,NULL,20); INSERT INTO EMP VALUES (7900,'JAMES','CLERK', 7698,'12-03-1981',950,NULL,30); INSERT INTO EMP VALUES (7902,'FORD','ANALYST', 7566,'12-03-1981',3000,NULL,20); INSERT INTO EMP VALUES (7934,'MILLER','CLERK', 7782,'01-23-1982',1300,NULL,10); 14