KR20060018781A - Mediating manage database system without kinds of dbms(database management system) connection - Google Patents
Mediating manage database system without kinds of dbms(database management system) connection Download PDFInfo
- Publication number
- KR20060018781A KR20060018781A KR1020040067301A KR20040067301A KR20060018781A KR 20060018781 A KR20060018781 A KR 20060018781A KR 1020040067301 A KR1020040067301 A KR 1020040067301A KR 20040067301 A KR20040067301 A KR 20040067301A KR 20060018781 A KR20060018781 A KR 20060018781A
- Authority
- KR
- South Korea
- Prior art keywords
- database
- dbms
- interface
- integrated
- program
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/23—Updating
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/256—Integrating or interfacing systems involving database management systems in federated or virtual databases
Landscapes
- Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
본 발명은 데이터베이스를 구성해 주는 DBMS의 종류에 상관없이 통합적 측면에서 모든 데이터베이스를 생성, 액세스 및 데이터 관리를 할 수 있는 데이터베이스 중개 프로그램에 관한 것으로, 어떤 사용자든지 해당 DBMS 언어를 공부하지 않아도 쉽게 데이터베이스를 구축하고 관리할 수 있으며, 데이터베이스의 통합 인터페이스를 지원하는 장치에 관한 것이다.
본 발명은 웹 서비스 제공자 및 웹 프로그램 개발자의 데이터베이스 연동시 유발할 수 있는, 다양한 DBMS의 인터페이스 차이로 인한 개발자의 혼란 및 프로그램 구성의 복잡성을 극복하며, 신속한 통합 데이터베이스 구성 및 인터페이스 호환과 용이한 DBMS 교체 등을 가능하게 해준다. 사용자는 통합된 인터페이스의 데이터베이스 중개프로그램을 통해 다양한 DBMS를 엑세스하여 데이터베이스 관리 작업을 쉽게 처리할 수 있다는 장점이 있다. 또한, 본 발명은 데이터베이스의 종류 및 DBMS언어에 상관없이 사용자에게는 하나의 통합된 인터페이스를 제공하므로 사용자는 데이터베이스 설계에 집중하면서 문법적인 구문이나 오류에 신경을 안 써도 된다는 장점이 있다.
또한, 본 발명을 이용하면 서로 다른 DBMS 및 데이터베이스 시스템을 몰라도 다른 데이터베이스 시스템간의 관계형 데이터베이스 구조를 및 연동 작업을 수행할 수 있다.
1. DBMS 2. 데이터베이스 3. DB 4. 인터페이스 5. MySQL 6. MS-SQL 7. Oracle 8. 통합 9. 시스템 10. 엑세스 11. 구축 12. 연동 13. 데이터베이스 언어(쿼리랭귀지) 14. 스키마
The present invention relates to a database brokerage program that can create, access, and manage all databases in an integrated aspect regardless of the type of DBMS constituting the database. Any user can easily develop a database without studying the corresponding DBMS language. It is about a device that can be built, managed, and that supports a database's integrated interface.
The present invention overcomes developer confusion and program configuration complexity due to various DBMS interface differences that can be caused when a web service provider and a web program developer interoperate with a database, and provide a quick integrated database configuration, interface compatibility, and easy DBMS replacement. To make it possible. The advantage is that users can easily access various DBMSs through database brokers with integrated interface to handle database management tasks. In addition, the present invention provides an integrated interface to the user regardless of the type of database and the DBMS language, so that the user does not have to worry about grammatical syntax or errors while focusing on the database design.
In addition, the present invention can perform a relational database structure and interworking operations between different database systems without knowing different DBMSs and database systems.
1. DBMS 2. Database 3. DB 4. Interface 5. MySQL 6. MS-SQL 7. Oracle 8. Integration 9. System 10. Access 11. Deployment 12. Integration 13. Database Language (Query Language) 14. Schema
Description
도 1은 기존 웹 서비스 및 웹 프로그램에서 서비스 제공자 및 개발자가 데이터베이스 연동을 위해 DBMS에 접근하는 방식 및 절차를 나타낸 도면.1 is a view illustrating a method and procedure of a service provider and a developer accessing a DBMS for interworking with a database in an existing web service and a web program.
도 2는 본 발명이 제안하는 새로운 방식의 통합된 DBMS 접근 방식 및 절차를 나타낸 도면.2 is a diagram illustrating a new method of integrated DBMS approach and procedure proposed by the present invention.
도 3은 본 발명이 제안한 방식 대한 기술적 측면에서 본 프로그램의 데이터 베이스 접근 및 처리 순서도.3 is a database access and processing flow chart of the program in technical terms for the scheme proposed by the present invention.
도 4는 도 5∼7에서 쓰일 예제 테이블 스키마.4 is an example table schema to be used in FIGS.
도 5는 웹 서비스 및 웹 프로그램에서 데이터베이스 접근에 대한 기존의 방식을 구현하는 예제 소스(PHP).5 is an example source (PHP) that implements an existing approach to database access in web services and web programs.
도 6은 도 7에서 인클루드(Include)될 통합된 데이터베이스 접근 및 관리 중개 시스템의 클래스 라이브러리 소스(PHP).6 is a class library source (PHP) of the integrated database access and management mediation system to be included in FIG.
도 7은 본 발명이 제안하는 새로운 방식을 도 6의 클래스 라이브러리와 함께 그것을 이용하여 구현하는 예제 소스(PHP).7 is an example source (PHP) for implementing the new scheme proposed by the present invention using the class library of FIG.
본 발명은 데이터베이스를 구성해 주는 DBMS의 종류에 상관없이 통합적 측면에서 모든 데이터베이스를 생성, 액세스 및 데이터 관리를 할 수 있는 데이터베이스 중개 프로그램에 관한 것으로, 어떤 사용자든지 해당 DBMS 언어를 공부하지 않아도 쉽게 데이터베이스를 구축하고 관리할 수 있으며, 데이터베이스의 통합 인터페이스를 지원하는 장치에 관한 것이다.The present invention relates to a database brokerage program that can create, access, and manage all databases in an integrated aspect regardless of the type of DBMS constituting the database. Any user can easily develop a database without studying the corresponding DBMS language. It is about a device that can be built, managed, and that supports a database's integrated interface.
도 1은 종래 기술에 따른 웹 프로그램과 데이터베이스 사이의 연동 방식을 설명한 도면이다.1 is a view for explaining a linkage method between a web program and a database according to the prior art.
이하 도 1을 참조, 웹 프로그램 개발자가 웹 프로그램 구현 시 데이터베이스 연동에 사용하던 방식을 살펴보기로 한다.Hereinafter, referring to FIG. 1, a web program developer will look at a method used for interworking with a database when implementing a web program.
최근에 각종 DBMS(데이터베스관리시스템)가 출시되고 국내 웹 프로그램 시장엔 많은 종류의 DBMS가 존재했다. DBMS의 예로는 MySQL, MS-SQL, Oracle등을 들 수 있으며, 이것은 데이터베이스 및 테이블과 필드, 데이터베이스 스키마 및 논리구조, 제약 조건 및 보안 등 다양한 부분의 데이터베이스 구축과 액세스를 지원한다. 하지만 기존의 서비스 제공자 및 개발자(101)가 웹 프로그램에서 데이터베이스 연동을 구현하려고 할 경우(107), 데이터베이스 구축 시 해당 데이터베이스의 DBMS에 따라 접근방식과 관리언어(쿼리랭귀지: 데이터베이스 명령문)를 습득해야만 하는 번거로움이 있었다(108). 또한 그렇게 제작된 웹 프로그램의 경우 한 종류의 DBMS에 최적화되게 된다(109).Recently, various DBMSs (database management systems) have been released, and there are many kinds of DBMSs in the domestic web program market. Examples of DBMSs include MySQL, MS-SQL, and Oracle, which support database construction and access in various parts, including databases and tables and fields, database schemas and logical structures, constraints, and security. However, if the existing service provider and
또한, 새로운 DBMS 및 업그레이드 버전이 출시되어도 데이터의 보존이 힘들고, 기존 DBMS와 새로운 DBMS의 액세스 인터페이스의 차이가 프로그램의 DB 처리부 재작성을 요구(또한, 잘 설계되지 않은 프로그램의 경우 DB 액세스 인터페이스 차이로 인해 프로그램의 모든 부분을 제작성해야 하는 경우도 많다)하기 때문에 섣불리 바꾸지 못하여 구식 DBMS를 쓰는 사용자도 굉장히 많다. 즉, DBMS의 종류는 다양해지고 사용자는 프로그램과 구축환경에 따라 각기 다른 DBMS를 통해 데이터 베이스를 구현해야 한다.In addition, data preservation is difficult even when new DBMSs and upgraded versions are released, and the difference between the access interface of the existing DBMS and the new DBMS requires rewriting of the DB processing part of the program. Because many parts of the program need to be made), there are a lot of users who use old DBMS because they cannot change it. In other words, the types of DBMS are diversified, and users have to implement database through different DBMS according to program and construction environment.
예를 들어, 기존에 사용하던 DBMS 1(106)에 있던 데이터를 새로운 DBMS 2(105) 또는 DBMS 3(104)으로 이전시키고 싶을 경우, 기존 DBMS 1의 인터페이스(103)와 통신되도록 구성되었던 프로그램을, DBMS 2, DBMS 3의 인터페이스(102)에 맞게 재구성하여 제작해야 할 것이다. 이는 개발자의 혼란을 야기할 뿐만 아니라, 웹 서비스의 특징상 요구될 수밖에 없는 빠른 처리를 하는 데 있어서 가장 큰 장애 요인이 된다.For example, if you want to transfer the data from the existing DBMS 1 (106) to the new DBMS 2 (105) or DBMS 3 (104), the program configured to communicate with the
본 발명은 웹 서비스 제공자 및 웹 프로그램 개발자의 데이터베이스 연동 시 유발할 수 있는, 다양한 DBMS의 인터페이스 차이로 인한 개발자의 혼란 및 프로그램 구성의 복잡성을 극복하며, 신속한 통합 데이터베이스 구성 및 인터페이스 호환과 용이한 DBMS 교체 등을 가능하게 해준다.The present invention overcomes developer confusion and program configuration complexity due to various DBMS interface differences that can be caused when a web service provider and a web program developer interoperate with a database. Makes it possible.
즉, 통합된 DBMS 인터페이스를 이용할 경우, 각 DBMS 간의 차이성을 염두하지 않아도 되기 때문에, 더욱 프로그램 설계에 집중할 수 있으며, 그것을 구현하는 과정에서도 신속하게 적용할 수 있다. 또한, DBMS 교체에 있어서도 프로그램 상의 데이터베이스 연동 부분을 크게 수정할 필요 없으며, 기존 방식 그대로를 유지할 수 있게 된다. 수정 요소가 줄어드는 만큼 개발 속도가 단축되는 것은 물론이다.In other words, if you use the integrated DBMS interface, you do not have to keep in mind the differences between each DBMS, so you can focus more on program design and apply it quickly in the process of implementing it. In addition, even in the DBMS replacement, it is not necessary to greatly modify the database interworking part on the program, and it is possible to maintain the existing method. Of course, the development speed is reduced as the number of modifications is reduced.
위 목적을 달성하기 위한 본 발명은, 데이터베이스를 운용하는 DBMS와, 이와 연동하는 씨지아이(CGI; Common Gateway Inteface) 파서(Parser), DBMS와 CGI 소스 사이를 중개하여 통합된 인터페이스를 제공하는 라이브러리 소스, 표면상으로 브라우저에서 실제 불러와 실행되는 CGI 소스로 구성된다. 이곳에서는 현재 세계적으로 가장 많이 쓰이는 씨지아이 파서(스크립트 언어; Script Language)인 PHP와 MySQL로 예를 들겠다.In order to achieve the above object, the present invention provides a library source that provides a unified interface between a DBMS that operates a database, a Common Gateway Inteface (CGI) Parser, and a DBMS and a CGI source. On the surface, it consists of CGI sources that are actually loaded and executed in the browser. Here is an example using PHP and MySQL, the world's most widely used script language (Script Language).
도 4는 예를 드는 데 있어서 사용될 예제 테이블이며, 테이블 네임은 "TABLE"로 한다.4 is an example table to be used in the example, and the table name is " TABLE ".
도 5의 경우, 기존에 사용되던 웹 프로그램에서의 데이터베이스 접근 방식이다.In the case of Figure 5, it is a database approach in a conventional web program.
소스를 보면 알 수 있겠지만, 기존의 방식은 소스 내에서 직접적으로 데이터베이스에 접근했으며, SQL 질의문 또한 그 자리에서 개발자가 작성하여 보냈다. 이런 식의 데이터베이스 접근 방식은, DBMS가 바뀌어 SQL 질의 방식이 달라지거나, 데이터베이스 접속 환경이 달라질 경우, 소스 전체적으로 수작업을 통해 코드를 알맞게 수정해야 하며, 이 경우 나타나는 버그도 잦다. 물론 수작업을 통해 진행되는 방식이기 때문에 개발 속도도 떨어지며, 결정적으로 프로그램 전체의 구조가 산만 해지게 된다.As you can see from the source, the traditional approach was to access the database directly from within the source, and the SQL query was also written and sent by the developer. In this type of database approach, if the DBMS changes, the SQL query method changes, or the database connection environment changes, manual modification of the code must be done manually throughout the source. Of course, because it is a manual process, the development speed is slowed down, and the overall structure of the program is distracted.
도 6은 데이터베이스 액세스를 처리하는 외부 라이브러리 소스이며, 이 프로그램을 통해 데이터베이스에 접근하도록 한다.6 is an external library source that handles database access and allows access to the database through this program.
객체를 생성할 때만 사용할 DBMS 종류와 그에 해당하는 정보를 인수로 받게 되며, 그 이후는 DBMS 종류에 상관 없이 같은 방식의 메소드로 데이터베이스 접근할 수 있게 한다. 예를 들어, 도 5에서와 같이 직접적으로 "INSERT INTO 'TABEL'…"와 같은 SQL 질의문을 mysql_query(); 와 같은 함수를 호출하여 실행하는 것이 아니라(이럴 경우, DBMS가 바뀌면 질의문과 호출할 함수의 수정이 필요하게 된다), $database->insert("TABLE", ...); 과 같이 로드한 클래스의 메소드를 통해 접근하게 된다. 이 메소드는 물론 DBMS 종류에 관계없이 같은 방식으로 작동하게 되어 있으며, DBMS 종류를 구분하여 SQL 질의문을 보내는 부분은 클래스가 보이지 않게 알아서 처리하게 된다.When creating an object, the DBMS type and the corresponding information are used as arguments. After that, the method can be accessed using the same method regardless of the DBMS type. For example, as shown in FIG. 5, an SQL query statement such as "INSERT INTO 'TABEL'…" is directly added to mysql_query (); Rather than calling and executing a function such as (in this case, changing the DBMS would require modifying the query statement and the function to be called), but $ database-> insert ("TABLE", ...); It is accessed through the method of the loaded class as follows. This method, of course, works in the same way regardless of the DBMS type, and the part that sends the SQL query by classifying the DBMS type is handled by making the class invisible.
도 7은 위의 라이브러리를 로드하여 데이터베이스 처리를 하는 방식으로, 도 5에서와는 달리 한눈에 알아보기 쉬운 깔끔한 소스 구성을 볼 수 있다. 또한 프로그램 소스 코드의 길이도 많이 줄었으며, 이러한 소스상에서 DBMS 교체 작업을 할 경우, 개발자가 손댈 곳은 클래스 생성자의 인수("mysql://root:pass@localhost/example") 뿐이다. 변경된 설정은 그 즉시 적용되어, 매우 신속한 교체 작업이 가능하게 된다.7 is a method of processing a database by loading the above library, unlike in FIG. 5, it is possible to see a clean source configuration that is easy to see at a glance. In addition, the length of the program source code has been greatly reduced, and the only place for developers to change DBMS on these sources is the argument of the class constructor ("mysql: // root: pass @ localhost / example"). The changed settings are applied immediately, allowing for very quick replacement.
본 발명에 따르면 사용자는 통합된 인터페이스의 데이터베이스 중개프로그램 을 통해 다양한 DBMS를 엑세스하여 데이터베이스 관리 작업을 쉽게 처리할 수 있다는 장점이 있다.According to the present invention, a user can easily access a variety of DBMSs through a database brokerage program of an integrated interface, thereby easily handling database management tasks.
또한, 본 발명은 데이터베이스의 종류 및 DBMS언어에 상관없이 사용자에게는 하나의 통합된 인터페이스를 제공하므로 사용자는 데이터베이스 설계에 집중하면서 문법적인 구문이나 오류에 신경을 안써도 된다.In addition, the present invention provides a single unified interface to the user regardless of the database type and DBMS language, so that the user does not have to worry about grammatical syntax or errors while focusing on the database design.
또한, 본 발명을 이용하면 서로 다른 DBMS 및 데이터베이스 시스템을 몰라도 다른 데이터베이스 시스템간의 관계형 데이터베이스 구조를 및 연동 작업을 수행할 수 있다.In addition, the present invention can perform a relational database structure and interworking operations between different database systems without knowing different DBMSs and database systems.
위의 장점에 따른 작업자의 시간단축, 기술구현 향상 및 경제적인 측면은 이로 말할 수 없다.Workers' time savings, technological improvements and economic aspects cannot be said.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040067301A KR20060018781A (en) | 2004-08-25 | 2004-08-25 | Mediating manage database system without kinds of dbms(database management system) connection |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020040067301A KR20060018781A (en) | 2004-08-25 | 2004-08-25 | Mediating manage database system without kinds of dbms(database management system) connection |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20060018781A true KR20060018781A (en) | 2006-03-02 |
Family
ID=37126351
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020040067301A KR20060018781A (en) | 2004-08-25 | 2004-08-25 | Mediating manage database system without kinds of dbms(database management system) connection |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20060018781A (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200131655A (en) | 2019-05-14 | 2020-11-24 | 주식회사 마크베이스 | Appratus and method for management of database |
KR102299746B1 (en) * | 2020-04-20 | 2021-09-08 | 최길주 | System for automatically processing data of web baed heterogeneous database and method thereof |
-
2004
- 2004-08-25 KR KR1020040067301A patent/KR20060018781A/en not_active Application Discontinuation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200131655A (en) | 2019-05-14 | 2020-11-24 | 주식회사 마크베이스 | Appratus and method for management of database |
KR102299746B1 (en) * | 2020-04-20 | 2021-09-08 | 최길주 | System for automatically processing data of web baed heterogeneous database and method thereof |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10324690B2 (en) | Automated enterprise software development | |
US7580946B2 (en) | Smart integration engine and metadata-oriented architecture for automatic EII and business integration | |
JP5065056B2 (en) | Method, computer program, and system for processing a workflow (integrating data management operations into a workflow system) | |
US20030167456A1 (en) | Architecture for building scalable object oriented web database applications | |
EP1811447A1 (en) | Declarative adaptation of software entities stored in an object repository | |
US20050154756A1 (en) | Method of generating database transaction statements based on existing queries | |
Altendorf et al. | Using J2EE on a large, Web-based project | |
KR20020050160A (en) | Object integrated management system | |
AU9010198A (en) | Relational database coexistence in object oriented environments | |
US7571197B2 (en) | Method and apparatus for synchronizing dataset object properties with underlying database structures | |
US20060294159A1 (en) | Method and process for co-existing versions of standards in an abstract and physical data environment | |
US20050262124A1 (en) | Method and apparatus for aggregated update of dataset records in a JavaScript environment | |
KR20060018781A (en) | Mediating manage database system without kinds of dbms(database management system) connection | |
US8271463B2 (en) | System and method for providing access to data with user defined table functions | |
US20050262070A1 (en) | Method and apparatus for combining of information across multiple datasets in a JavaScript environment | |
Heiler et al. | Heterogeneous information systems: Understanding integration | |
US20050262037A1 (en) | Method and apparatus for controlling result dataset generation in a javascript environment | |
US20050262156A1 (en) | Method and apparatus for informational comparison of multiple datasets in a javascript environment | |
Danturthi | Comparative study of web application development with sql server and db4o | |
Kornilov et al. | Accessing Data | |
Nevarez et al. | How SQL Server Works | |
CN114138878A (en) | JAVA general edition relational data operation middleware | |
Rad | Mastering Hibernate | |
Kalapos | Database synchronization between mobile devices and classical relational database management systems | |
Sharan et al. | JDBC API |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
E601 | Decision to refuse application |