전체 글
-
11.1 Entities, relationships, and attributes데이터베이스 시스템 2024. 11. 27. 12:40
The entity-relationship model데이터베이스 설계 과정데이터베이스 설계는 데이터베이스에 대한 구두 또는 문서화된 요구 사항에서 시작된다.요구 사항은 엔터티-관계 모델(Entity-Relationship Model)로 형식화되며, 이후 SQL로 구현된다. 엔터티-관계 모델이란?엔터티-관계 모델은 구현 세부 사항을 무시한 데이터 요구 사항의 하이 레벨 표현이다.이 모델은 MySQL과 같은 특정 데이터베이스 시스템에서 구현을 안내한다.엔터티-관계 모델의 구성 요소엔터티(Entity)사람, 장소, 제품, 개념, 또는 활동과 같은 객체를 나타낸다.관계(Relationship)두 엔터티 간의 관계를 나타내는 진술이다.일반적으로 두 개의 다른 엔터티 간의 관계를 나타내지만, 동일한 엔터티 간의 관..
-
10.5 Database programming with Java데이터베이스 시스템 2024. 11. 26. 07:39
Connections이 섹션에서는 Java와 MySQL을 사용한 데이터베이스 프로그래밍을 설명한다.Connector/J는 MySQL의 공식 JDBC(Java Database Connectivity) 드라이버이다.이 섹션은 Java 언어에 대한 기본적인 지식을 전제로 한다.Connector/J 설치더보기Connector/J 패키지는 Java 프로그램이 실행되는 컴퓨터에 설치되어야 한다. Connector/J를 다운로드하고 설치하는 방법은 Connector/J Installation에서 확인할 수 있다.Java 프로그램은 java.sql.Connection과 java.sql.DriverManager 클래스를 import하고 사용하여 MySQL 데이터베이스에 연결한다.Java 프로그램은 쿼리를 실행하기 전에 ..
-
10.4 Database programming with Python데이터베이스 시스템 2024. 11. 25. 10:32
Connections이 섹션에서는 Connector/Python을 사용하여 Python과 MySQL을 활용한 데이터베이스 프로그래밍을 설명한다.Connector/Python은 Python Software Foundation의 DB-API 표준을 기반으로 한 MySQL 구성 요소이다.이 섹션은 Python 언어에 대한 기본적인 지식을 전제로 한다. Connector/Python 설치더보기Connector/Python 패키지는 Python 프로그램이 실행되는 컴퓨터에 설치되어야 한다.Connector/Python은 mysql.com에서 다운로드한 후 설치 프로그램을 실행하여 설치할 수 있다.Windows 또는 Mac 명령줄에서 pip를 사용하여 설치할 수 있다:pip install mysql-connecto..
-
10.3 MySQLi (PHP)데이터베이스 시스템 2024. 11. 24. 10:04
Connecting to MySQLMySQL Improved Extension(MySQLi)는 PHP 애플리케이션이 MySQL 데이터베이스와 상호작용할 수 있도록 한다. MySQLi는 절차적 및 객체 지향 구문을 지원하며, 여기서는 객체 지향 구문을 사용한다.PHP 스크립트는 쿼리를 실행하기 전에 데이터베이스에 연결해야 한다. MySQL 서버에 연결하려면 PHP 스크립트가 다음 인수를 사용하여 mysqli 객체를 생성한다:MySQL 서버가 실행 중인 컴퓨터의 호스트 이름MySQL 사용자의 사용자 이름MySQL 사용자의 비밀번호사용할 데이터베이스MySQLi는 데이터베이스에 연결하거나 SQL 문을 실행하는 동안 오류가 발생하면 mysqli_sql_exception을 출력한다.웹 브라우저는 db.php라는 P..
-
10.2 Database programming for the web데이터베이스 시스템 2024. 11. 23. 13:35
Connections이 섹션에서는 PHP와 MySQL을 사용한 웹 데이터베이스 프로그래밍을 설명한다. PHP는 동적 웹사이트를 생성하는 데 가장 널리 사용되는 프로그래밍 언어이다. PHP의 대안으로는 Python, Java, Node.js, ASP.NET 등이 있다. 이 섹션은 웹 페이지를 작성하는 언어인 HTML과 PHP에 대한 기본 지식을 전제로 한다. PHP 애플리케이션은 MySQL을 포함한 다양한 데이터베이스와 상호작용하기 위해 PHP Data Objects (PDO) API를 사용한다. 특정 데이터베이스에 PDO를 사용하려면 해당 데이터베이스에 맞는 PDO 드라이버가 필요하다. 대부분의 PHP 설치에는 MySQL용 PDO 드라이버가 포함되어 있다. PHP 스크립트는 쿼리를 실행하기 전에 데이터베..
-
10.1 Application programming interfaces데이터베이스 시스템 2024. 11. 22. 07:15
개요애플리케이션 프로그래밍 인터페이스(API)는 애플리케이션과 데이터베이스, 이메일, 웹 서비스와 같은 컴퓨터 서비스 간의 상호작용을 지정한다. - 애플리케이션이 C와 같은 절차적 언어로 작성된 경우, API는 프로시저 호출을 지정한다. - 애플리케이션이 Java와 같은 객체 지향 언어로 작성된 경우, API는 클래스를 지정한다. 수백 개의 API가 주요 프로그래밍 언어와 널리 사용되는 서비스 간의 연결을 제공한다. 관계형 데이터베이스와 기타 데이터 소스를 위한 API만 해도 수십 개가 있다. - 각 프로그래밍 언어는 서로 다른 서비스를 위한 다양한 API를 지원한다. Ex: Java는 메시지 서비스를 위한 JMS, 음성 합성과 인식을 위한 JSAPI, 이메일 서비스를 위한 Java..
-
9.3 Procedural SQL데이터베이스 시스템 2024. 11. 21. 08:49
개요절차적 SQL(Procedural SQL)은 SQL 언어를 확장하여 절차(Procedures), 함수(Functions), 조건문(Conditionals), 및 루프(Loops)를 포함한다. 절차적 SQL은 데이터베이스 애플리케이션을 위해 설계되었으며, Java, Python, C와 같은 범용 언어의 모든 기능을 제공하지는 않는다. 절차적 SQL은 원칙적으로 완전한 프로그램을 작성하는 데 사용할 수 있다. 그러나 대부분의 경우, 데이터베이스와 상호작용하고 제한된 작업을 수행하는 프로시저를 생성하는 데 사용된다. 이러한 프로시저는 데이터베이스에서 컴파일되고 저장되므로 저장 프로시저(Stored Procedures)라고 한다. 저장 프로시저는 명령줄에서 호출하거나, 다른 언어로 작성된 호스트 프로그램에서..
-
9.2 Embedded SQL데이터베이스 시스템 2024. 11. 20. 07:16
개요임베디드 SQL 문장은 host language라고 불리는 다른 언어로 작성된 프로그램에 나타난다. 임베디드 SQL은 SQL을 호스트 언어 문장과 구분하기 위해 EXEC SQL 키워드로 시작하며, 그 뒤에 SQL 문과 세미콜론이 온다. 임베디드 SQL을 포함하는 프로그램은 두 단계로 컴파일된다:프리컴파일러(Precompiler): SQL 문을 호스트 언어 문장 및 함수 호출로 변환한다.호스트 언어 컴파일러(Host Language Compiler): 호스트 언어 프로그램을 실행 가능한 프로그램으로 변환한다.임베디드 SQL은 SQL 표준에 정의되어 있으며, C, COBOL, FORTRAN과 같은 오래된 호스트 언어에서 일반적으로 지원된다. Ex: Oracle Database의 C 구현은 Pro*C라고 ..