KR101351079B1 - Method and system for providing service for controlling program linked to database - Google Patents

Method and system for providing service for controlling program linked to database Download PDF

Info

Publication number
KR101351079B1
KR101351079B1 KR1020110091203A KR20110091203A KR101351079B1 KR 101351079 B1 KR101351079 B1 KR 101351079B1 KR 1020110091203 A KR1020110091203 A KR 1020110091203A KR 20110091203 A KR20110091203 A KR 20110091203A KR 101351079 B1 KR101351079 B1 KR 101351079B1
Authority
KR
South Korea
Prior art keywords
column information
database
attribute value
sql
information
Prior art date
Application number
KR1020110091203A
Other languages
Korean (ko)
Other versions
KR20130027767A (en
Inventor
이재기
Original Assignee
(주)이맥스
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by (주)이맥스 filed Critical (주)이맥스
Priority to KR1020110091203A priority Critical patent/KR101351079B1/en
Publication of KR20130027767A publication Critical patent/KR20130027767A/en
Application granted granted Critical
Publication of KR101351079B1 publication Critical patent/KR101351079B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/21Design, administration or maintenance of databases
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/161Computing infrastructure, e.g. computer clusters, blade chassis or hardware partitioning
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Human Computer Interaction (AREA)
  • Strategic Management (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Development Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Mathematical Physics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은, 데이터베이스와 연동되는 프로그램을 관리자가 용이하게 제어할 수 있도록 하는 서비스를 제공하는 방법 및 시스템이다. 본 발명에서는, 데이터베이스와 연동되는 프로그램을 제어하는 시스템에서, 상기 프로그램을 제어하는 방법에 있어서, 관리자에게 입력 인터페이스를 제공하는 단계, 상기 입력 인터페이스를 통해 상기 관리자로부터 SQL 구문을 수신하는 단계, 상기 수신된 SQL 구문을 데이터베이스에서 처리하는 단계, 상기 SQL 처리결과를 수신하고, 상기 SQL 처리결과로부터 컬럼정보를 추출하는 단계, 및 상기 컬럼정보에 대한 속성값을 매칭하는 단계를 포함한다. 이와 같은 본 발명에 의하면, 상기 프로그램 전반에 대한 전문적인 지식을 갖고 있지 않아도, 관리자가 쉽게 프로그램을 제어할 수 있는 서비스를 제공할 수 있다.The present invention is a method and system for providing a service that allows an administrator to easily control a program linked with a database. In the present invention, in a system for controlling a program linked with a database, in the method for controlling the program, providing an input interface to an administrator, receiving an SQL statement from the administrator via the input interface, the receiving Processing the SQL statement in a database, receiving the SQL processing result, extracting column information from the SQL processing result, and matching attribute values with respect to the column information. According to the present invention as described above, it is possible to provide a service that allows an administrator to easily control a program without having specialized knowledge of the overall program.

Description

데이터베이스와 연동되는 프로그램을 제어하는 서비스 제공 방법 및 시스템{METHOD AND SYSTEM FOR PROVIDING SERVICE FOR CONTROLLING PROGRAM LINKED TO DATABASE}TECHNICAL AND SYSTEM FOR PROVIDING SERVICE FOR CONTROLLING PROGRAM LINKED TO DATABASE}

본 발명은, 관리자가 컴퓨터 프로그램을 용이하게 제어할 수 있도록 하는 서비스를 제공하는 방법 및 시스템에 관한 것으로, 보다 구체적으로는, 데이터베이스와 연동되는 프로그램을 관리자가 용이하게 제어할 수 있도록 하는 서비스를 제공하는 방법 및 시스템이다.The present invention relates to a method and a system for providing a service that allows an administrator to easily control a computer program. More particularly, the present invention provides a service that allows an administrator to easily control a program linked to a database. Method and system.

회사를 효과적으로 관리하기 위해, 회사 리소스를 통합적으로 관리하는 툴이 많이 도입되었다, 즉, 최근, 많은 회사에서는, 회사의 자금, 회계, 구매, 생산, 판매 등 회사의 리소스에 관한 정보를 저장하는 데이터베이스를 효율적으로 관리할 수 있도록 하는 ERP (Enterprise Resource Planning) 시스템을 도입하였다. 회사에서는, ERP 시스템을 이용하면서, 회사 전반의 업무 프로세스를 통합적으로 관리하고, 실시간으로 문제점을 파악할 수 있었다.In order to effectively manage a company, a number of tools have been introduced to manage company resources collectively. In recent years, many companies have a database that stores information about a company's resources, such as company funds, accounting, purchasing, production, and sales. Introduced the ERP (Enterprise Resource Planning) system to efficiently manage By using the ERP system, the company was able to manage the company's overall business processes and identify problems in real time.

이러한 ERP 시스템은, 회사 조직 등 회사 업무 프로세스에 변동이 있을 때마다 그 변동을 반영할 수 있어야 한다. 예를 들어, 제조공장의 ERP 시스템이 한 해의 생산량에 대해서만 관리하였으나, 지난해 대비 올해 생산량을 관리하려고 하는 경우에는, ERP 시스템의 변동이 필요하다. 즉, ERP 시스템은 지속적인 업데이트가 필요하며, 이에 관리자는 회사 내에 구축되어 있는 ERP 시스템에 대한 해박한 지식을 갖고 있는 전문 개발자를 고용해야 한다. 마찬가지로, 한국 특허 공개 번호 제 10-2004-93680 호에서도 ERP 시스템을 신속하게 구축하는 방안을 제시하나, 그 방안을 실현하기 위해서는 상기 방안에서 제시된 프로그램을 개발할 수 있는 개발자가 필요하다.Such an ERP system should be able to reflect changes in the company's business processes, such as company organization. For example, if a manufacturing plant's ERP system manages only one year's output, but wants to manage this year's output compared to last year, the ERP system needs to change. In other words, the ERP system needs to be constantly updated, and managers must hire professional developers who have a thorough knowledge of the ERP system deployed in the company. Similarly, Korean Patent Publication No. 10-2004-93680 proposes a method for quickly constructing an ERP system, but in order to realize the method, a developer who can develop the program described in the above method is required.

즉, 회사 관리자는 ERP 시스템을 유지보수하려고 할 때마다 개발자들을 필요로 하나, 현실적으로 이러한 개발자들을 바로 고용하기가 어렵고, 또한 개발자 고용에 따른 비용이 발생된다는 문제점도 있다. In other words, a company manager needs developers every time he wants to maintain an ERP system, but in reality, it is difficult to hire such developers immediately, and there is a problem incurred by hiring developers.

또한, 개발자들도, ERP 시스템을 개발한 당사자가 아닌 이상, 상기 ERP 시스템의 프로그램 소스를 모두 분석해야 하고, 이로 인해 불필요한 프로세스가 반복적으로 발생하게 된다. 또한, ERP 시스템을 통제하는 소스코드는 실제로 복잡한 경우가 많아, 극히 작은 부분에서 소스코드가 잘못 코딩되면, 프로그램 전체가 오작동되어 ERP 시스템에 심각한 오류가 발생할 수도 있다.In addition, developers must analyze all program sources of the ERP system, unless the party has developed the ERP system, which causes unnecessary processes repeatedly. In addition, the source code that controls the ERP system is often complicated, and if the source code is incorrectly coded in a very small part, the entire program may malfunction, causing serious errors in the ERP system.

따라서 본 발명은, 위와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명은 프로그래밍에 대한 전문적인 지식을 갖고 있는 개발자의 개입없이, 관리자가 쉽게 프로그램을 제어할 수 있는 서비스를 제공하는 것을 목적으로 한다.Therefore, the present invention has been made to solve the above problems, and the present invention is to provide a service that allows the administrator to easily control the program, without the involvement of a developer having a professional knowledge of programming. .

또한, 본 발명은, 관리자가 프로그램을 제어하는데 있어, 소요되는 시간 및 비용을 줄이는 것을 목적으로 한다.It is also an object of the present invention to reduce the time and cost required for an administrator to control a program.

또한, 본 발명은, 관리자가 프로그램을 제어하는데 있어, 보다 정확성있는 제어 방법을 제공하는 것을 목적으로 한다.In addition, an object of the present invention is to provide a more accurate control method for the administrator to control the program.

상기한 바와 같은 목적을 달성하기 위한 본 발명의 특징에 따르면, 데이터베이스와 연동되는 프로그램을 제어하는 시스템에서, 상기 프로그램을 제어하는 방법에 있어서, 관리자에게 입력 인터페이스를 제공하는 단계, 상기 입력 인터페이스를 통해 상기 관리자로부터 SQL 구문을 수신하는 단계, 상기 수신된 SQL 구문을 데이터베이스에서 처리하는 단계, 상기 SQL 처리결과를 수신하고, 상기 SQL 처리결과로부터 컬럼정보를 추출하는 단계, 및 상기 컬럼정보에 대한 속성값을 매칭하는 단계를 포함한다.According to a feature of the present invention for achieving the above object, in a system for controlling a program linked with a database, in the method for controlling the program, providing an input interface to an administrator, through the input interface Receiving an SQL statement from the administrator, processing the received SQL statement in a database, receiving the SQL processing result, extracting column information from the SQL processing result, and an attribute value for the column information Matching.

또한, 본 발명에서는, 상기 입력 인터페이스를 통해 사용자로부터 상기 프로그램의 실행 요청을 수신하는 단계, 및 상기 사용자에게, 출력 인터페이스를 통해, 상기 컬럼정보에 대해 상기 매칭된 속성값을 적용한 뷰페이지를 디스플레이하는 단계를 더 포함한다.In the present invention, the step of receiving the execution request of the program from the user through the input interface, and through the output interface, to the user to display a view page applying the matched attribute value to the column information It further comprises a step.

또한, 본 발명에서는, 상기 매칭하는 단계는, 상기 컬럼정보에 대한 속성값을 자동으로 결정하는 단계, 및 상기 결정된 속성값을 상기 컬럼정보에 대응되도록 매칭하는 단계를 포함한다.In the present invention, the step of matching includes automatically determining an attribute value for the column information, and matching the determined attribute value to correspond to the column information.

또한, 본 발명에서는, 상기 결정하는 단계는, 상기 컬럼정보가 사용되는 폼과 동일한 폼에서, 상기 컬럼정보와는 동일한 명칭을 가지면서 매칭되는 속성값이 이미 존재하는 컬럼정보의 속성값을 획득하는 단계, 및 상기 획득된 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함한다.Also, in the present invention, the determining may include obtaining the attribute value of the column information in the same form as the form in which the column information is used, having the same name as the column information and having a matching attribute value. And determining the obtained attribute value as an attribute value of the column information.

또한, 본 발명에서는, 상기 결정하는 단계는, 상기 SQL 구문으로부터, 상기 컬럼정보와 대응되는 데이터베이스의 테이블 정보를 획득하는 단계, 및 상기 테이블 정보의 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함한다.In the present invention, the determining may include obtaining table information of a database corresponding to the column information from the SQL statement, and determining an attribute value of the table information as an attribute value of the column information. It includes.

또한, 본 발명에서는, 상기 결정하는 단계는, 상기 컬럼정보와는 동일한 명칭을 가지면서 매칭되는 속성값이 이미 존재하는 컬럼정보의 속성값을 모든 폼에서 검색하는 단계, 상기 검색된 속성값 중 가장 많은 빈도수로 나타나는 속성값을 획득하는 단계, 및 상기 획득된 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함한다.Also, in the present invention, the determining may include: retrieving attribute values of column information having the same name as the column information and matching attribute values already present in all forms; Obtaining an attribute value represented by a frequency, and determining the obtained attribute value as an attribute value of the column information.

또한, 본 발명에서는, 데이터베이스와 연동되는 프로그램을 제어하는 시스템으로서, 관리자에게 입력 인터페이스를 제공하도록 구성되는 사용자단말기, 상기 사용자단말기로부터 SQL 구문을 수신하고, 상기 SQL 구문을 데이터베이스로 전달하도록 구성되는 서버, 및 상기 서버로부터 수신되는 SQL 구문을 처리하도록 구성되는 데이터베이스를 포함하고, 상기 서버는, 상기 데이터베이스로부터 SQL 처리결과를 수신하고, 상기 SQL 처리결과로부터 컬럼정보를 추출하며, 상기 컬럼정보에 대한 속성값을 매칭하도록 추가적으로 구성된다.In addition, in the present invention, a system for controlling a program interoperating with a database, comprising: a user terminal configured to provide an input interface to an administrator, a server configured to receive an SQL syntax from the user terminal and deliver the SQL syntax to a database And a database configured to process an SQL syntax received from the server, wherein the server receives an SQL processing result from the database, extracts column information from the SQL processing result, and attributes for the column information. It is further configured to match the value.

이와 같은 본 발명에 의하면, 프로그래밍에 대한 전문적인 지식을 갖고 있는 개발자의 개입없이, 관리자가 쉽게 프로그램을 제어할 수 있는 서비스를 제공할 수 있다.According to the present invention as described above, it is possible to provide a service in which an administrator can easily control a program without the involvement of a developer having expertise in programming.

또한, 본 발명은, 관리자가 프로그램을 제어하는데 있어, 소요되는 시간 및 비용을 줄일 수 있다.In addition, the present invention can reduce the time and cost required for the administrator to control the program.

또한, 본 발명은, 관리자가 프로그램을 제어하는데 있어, 보다 정확성있는 제어 방법을 제공할 수 있다.In addition, the present invention can provide a more accurate control method for the administrator to control the program.

도 1 은, 본 발명의 바람직한 실시 예에 따른 시스템을 나타낸 도면.
도 2 는, 본 발명의 바람직한 일 실시예에 따른 서버의 전체적인 개략도.
도 3 은, 본 발명의 바람직한 일 실시예에 따른 방법을 제공하는 동작의 흐름도.
도 4 및 도 5 는, 본 발명의 바람직한 일 실시예에 따른 입력 인터페이스 및 출력 인터페이스.
도 6 은, 본 발명의 바람직한 일 실시예에 따른 방법을 제공하는 동작의 흐름도.
1 illustrates a system in accordance with a preferred embodiment of the present invention.
2 is an overall schematic diagram of a server according to a preferred embodiment of the present invention.
3 is a flowchart of an operation for providing a method according to a preferred embodiment of the present invention.
4 and 5 are an input interface and an output interface according to a preferred embodiment of the present invention.
6 is a flowchart of an operation for providing a method according to a preferred embodiment of the present invention.

본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.BRIEF DESCRIPTION OF THE DRAWINGS The advantages and features of the present invention and the manner of achieving them will become apparent with reference to the embodiments described in detail below with reference to the accompanying drawings. However, the present invention is not limited to the embodiments disclosed below, but can be implemented in various different forms, and only the embodiments make the disclosure of the present invention complete, and the general knowledge in the art to which the present invention belongs. It is provided to fully inform the person having the scope of the invention, which is defined only by the scope of the claims. Like reference numerals refer to like elements throughout.

도 1 은 본 발명의 실시예에 의한 서비스제공시스템 (100) 의 구성을 개략적으로 도시한 개념도이다.1 is a conceptual diagram schematically showing the configuration of a service providing system 100 according to an embodiment of the present invention.

본 발명의 실시예에 따른 서비스제공시스템 (100) 은, 프로그램 개발에 전문적인 지식을 갖고 있지 아니한 회사 관리자가, 몇 개의 SQL 구문으로 데이터베이스와 연동되는 프로그램을 변경할 수 있도록 하는 서비스를 제공한다. The service providing system 100 according to the embodiment of the present invention provides a service that enables a company administrator who does not have expertise in program development to change a program linked to a database by using several SQL statements.

도 1 에 도시된 바와 같이, 서비스제공시스템 (100) 은, 사용자단말기 (101, 102), 서버 (200) 및 데이터베이스 (300) 를 포함하며, 이들은 네트워크를 통해 연결되어 있어 서로 통신가능하다.As shown in FIG. 1, the service providing system 100 includes user terminals 101 and 102, a server 200, and a database 300, which are connected through a network to communicate with each other.

사용자단말기 (101, 102) 는, 데이터베이스와 연동되는 프로그램에 액세스할 필요가 있는 사용자, 또는, 상기 데이터베이스 및 상기 프로그램을 관리하는 관리자가 서비스제공시스템 (100) 에 액세스하기 위한 장치 일체를 포함하며, 일반적으로 전자단말기가 될 수 있다. 예를 들어, 사용자단말기 (101, 102) 는, 콘솔, 셀룰러 전화, 개인용 컴퓨터(PC), 타블릿(Tablet) 컴퓨터, 이동통신단말기, 노트북, PDA(personal digital assistants) 들 중 임의의 것이 될 수 있다. User terminal (101, 102) includes a user who needs to access a program linked with a database, or an apparatus for accessing the service providing system 100 by the administrator who manages the database and the program, In general, it can be an electronic terminal. For example, the user terminals 101 and 102 may be any of a console, a cellular telephone, a personal computer (PC), a tablet computer, a mobile communication terminal, a notebook computer, and personal digital assistants (PDAs). .

사용자단말기 (101, 102) 는 관리자 또는 사용자로부터 입력을 수신할 수 있는 입력 인터페이스를 포함하고, 또한, 서버 (200) 로부터 수신된 정보를, 관리자 또는 사용자에게 디스플레이할 수 있는 출력 인터페이스를 포함한다. 관리자 또는 사용자는 사용자단말기 (101, 102) 에서 제공하는 입력 인터페이스를 통해, 서버 (200) 로, 특정 응용 프로그램을 수행하도록 요청할 수 있으며, 또한, 데이터베이스와 연동되는 응용 프로그램을 제어하기 위한 SQL 구문도 입력할 수 있다. 사용자단말기 (101, 102) 는 상기 입력 인터페이스를 통해 입력된 정보를 서버 (200) 로 송신한다.The user terminals 101 and 102 include an input interface capable of receiving input from an administrator or a user, and also include an output interface capable of displaying information received from the server 200 to an administrator or a user. The administrator or the user may request the server 200 to execute a specific application through the input interface provided by the user terminals 101 and 102. Also, an SQL statement for controlling an application linked with a database may be requested. You can enter The user terminals 101 and 102 transmit information input through the input interface to the server 200.

서버 (200) 는, 네트워크를 통해 입력된 요청에 따른 결과를 사용자단말기 (101, 102) 로 전달한다. 서버 (200) 가 사용자로부터 응용 프로그램을 실행할 것을 요청받은 경우, 상기 응용 프로그램의 실행 결과를 사용자단말기 (101, 102) 로 전달할 수 있다. 또한, 서버 (200) 가 관리자로부터 특정 응용 프로그램과 관계된 SQL 구문을 입력받으면, 상기 SQL 구문을 데이터베이스 (300) 로 전달하여 실행되도록 하고, 데이터베이스 (300) 로부터 그 실행결과, 즉, SQL 처리결과를 수신하며, 이후 사용자단말기 (101, 102) 로부터 상기 특정 응용 프로그램의 실행을 요청받으면, 상기 SQL 처리결과 및 상기 SQL 구문을 반영하여 상기 특정 응용 프로그램을 실행하고 그 결과를 사용자단말기 (101, 102) 로 송신한다.The server 200 transmits the result according to the request input through the network to the user terminals 101 and 102. When the server 200 is requested to execute an application program from the user, the execution result of the application program may be transmitted to the user terminals 101 and 102. In addition, when the server 200 receives an SQL statement related to a specific application from an administrator, the server 200 transmits the SQL statement to the database 300 to be executed, and the execution result, that is, the SQL processing result is output from the database 300. After receiving the request from the user terminals 101 and 102 to execute the specific application, the specific application is executed by reflecting the result of the SQL processing and the SQL syntax, and the user terminal 101 or 102 is executed. To send.

데이터베이스 (300) 는 서비스제공시스템 (100) 내에서 상기 시스템과 관계된 복수 이용자의 요구에 응답하여, 데이터를 수신하여 저장하고 제공하는 저장 매체이다. 데이터베이스 (300) 의 테이블은 컬럼 (column) 및 로우 (row) 로 구성된 개체들을 표현하기 위한 데이터베이스 객체이다.The database 300 is a storage medium for receiving, storing and providing data in response to a request of a plurality of users associated with the system in the service providing system 100. The table of database 300 is a database object for representing entities organized by columns and rows.

데이터베이스 (300) 는, 데이터를 종합적으로 유지하고 관리해주는 DBMS (database management system) 에 의해 운용된다. 이러한 DBMS 는 다수의 이용자들의 응용 프로그램들이 데이터베이스 (300) 내의 데이터에 액세스할 수 있도록 한다. 또한, DBMS 는 서버 (200) 로부터 수신된 SQL 구문을 분석하고 상기 SQL 구문을 데이터베이스 (300) 에서 실행하며, 그 처리 결과를 SQL 처리결과로서 서버 (200) 로 전달한다.The database 300 is operated by a database management system (DBMS) that comprehensively maintains and manages data. Such a DBMS allows applications of multiple users to access data in the database 300. In addition, the DBMS analyzes the SQL syntax received from the server 200 and executes the SQL syntax in the database 300, and transmits the processing result to the server 200 as the SQL processing result.

도 2 는 본 발명의 실시 예에 의한 서비스제공시스템 (100) 에 포함된 서버 (200) 의 구성을 개략적으로 도시한 블럭도이다.2 is a block diagram schematically illustrating a configuration of a server 200 included in a service providing system 100 according to an exemplary embodiment of the present invention.

서버 (200) 는, 통신부 (210), 사용자요청처리부 (220), 결과분석부 (230), 속성매칭부 (240) 및 응용 프로그램 관리부 (250) 를 포함한다. The server 200 includes a communication unit 210, a user request processing unit 220, a result analyzing unit 230, an attribute matching unit 240, and an application program managing unit 250.

통신부 (210) 는, 서버 (200) 를 서버 외부의 네트워크와 연결시키며, 서버 (200) 가 사용자단말기 (101, 102) 또는 데이터베이스 (300) 와 통신할 수 있도록 한다. 또한, 통신부 (210) 는 서버 (200) 내의 각 구성들을 연결하며, 상기 각 구성들이 통신할 수 있도록 한다.The communication unit 210 connects the server 200 with a network outside the server, and enables the server 200 to communicate with the user terminals 101 and 102 or the database 300. In addition, the communication unit 210 connects the respective components in the server 200, and allows the respective components to communicate.

사용자요청처리부 (220) 는 통신부 (210) 를 통해 수신된 요청을 처리한다. 즉, 사용자단말기 (101, 102) 를 통해 사용자가 응용 프로그램을 실행할 것을 요청한 경우, 예를 들어, 웹 페이지 등의 응용 프로그램을 실행하기를 요청한 경우, 사용자요청처리부 (220) 는 상기 요청에 따라 상기 응용 프로그램을 실행하도록 상기 요청을 응용 프로그램 관리부 (250) 로 전달하고, 응용 프로그램 관리부(250) 는 실행결과물인 뷰페이지 (view page) 를 사용자단말기 (101, 102) 로 송신한다. 또한, 사용자요청처리부 (220) 는 사용자단말기 (101, 102) 를 통해 관리자로부터 SQL 구문을 수신하면, 상기 SQL 구문을 데이터베이스 (300) 로 전달하여 실행되도록 하며, 상기 실행에 따른 SQL 처리결과를 결과분석부 (230), 속성매칭부 (240) 및 응용 프로그램 관리부 (250) 에서 처리되도록 한다. The user request processing unit 220 processes the request received through the communication unit 210. That is, when a user requests to execute an application through the user terminals 101 and 102, for example, when a request is made to execute an application such as a web page, the user request processing unit 220 according to the request. The request is transmitted to the application manager 250 to execute the application program, and the application manager 250 transmits a view page, which is an execution result, to the user terminals 101 and 102. In addition, when the user request processing unit 220 receives the SQL statement from the administrator through the user terminals 101 and 102, the user request processing unit 220 transmits the SQL statement to the database 300 to be executed and outputs the result of the SQL processing according to the execution. The processor 230, the attribute matching unit 240, and the application manager 250 are processed.

결과분석부 (230) 는, 사용자요청처리부 (220) 가 사용자단말기 (101, 102) 로부터 수신된 SQL 구문을 데이터베이스 (300) 로 전달함으로써 획득된 결과를 수신한다. 이러한 SQL 구문을 데이터베이스에서 실행한 결과를, 편의상 "SQL 처리결과"라고 칭한다. 결과분석부 (230) 는 수신된 SQL 처리결과로부터 사용자에게 디스플레이될 컬럼정보를 추출한다. 예를 들어, 관리자가 입력한 SQL 구문에, 데이터베이스 (300) 에 포함된 임의의 데이터에 대한 조회를 수행하는 SELECT 명령이 포함되어 있는 경우, 상기 SQL 구문을 데이터베이스 (300) 에서 실행한 SQL 처리결과는 컬럼정보 및 상기 컬럼정보에 대응되는 로우정보를 포함하게 된다. 이에, 결과분석부 (230) 는 상기 SQL 처리결과로부터 컬럼정보를 추출할 수 있다.The result analyzing unit 230 receives the result obtained by the user request processing unit 220 transferring the SQL syntax received from the user terminal 101, 102 to the database 300. The result of executing such an SQL statement in a database is called "SQL processing result" for convenience. The result analyzing unit 230 extracts column information to be displayed to the user from the received SQL processing result. For example, if the SQL statement input by the administrator includes a SELECT command for performing an inquiry on any data included in the database 300, the SQL processing result of executing the SQL statement in the database 300 Includes column information and row information corresponding to the column information. Accordingly, the result analyzer 230 may extract column information from the SQL processing result.

속성매칭부 (230) 는 상기 추출된 컬럼정보 각각에 대해, 속성값 (예를 들어, 컬럼의 타입 (예를 들어, 2진수의 숫자, 텍스트 형식 등), 컬럼정보를 뷰 페이지에 개시할지 여부, 컬럼정보로의 액세스 권한이 부여된 집단의 선택, 컬럼정보가 뷰페이지에서 디스플레이될 때의 폭 (width), 높이 (height) 등 상기 컬럼정보를 규정하는 특성) 을 매칭시킬 수 있다. 이때, 관리자로부터 입력을 받아 컬럼정보에 매칭되는 속성값을 설정할 수도 있으나, 별도의 관리자 설정 없이, 시스템 상에서 자동으로 컬럼정보에 매칭되는 속성값을 설정할 수 있다. 본 발명에서는 컬럼정보에 매칭되는 속성값을 자동으로 설정해줄 수 있으므로, 관리자가 수동으로 속성값을 설정하는 수고를 덜 수 있으며, 프로그램을 변경하는 등의 제어가 빠른 시간 내에 가능하며, 또한, 관리자가 속성값을 잘못 설정하는 실수도 방지해줄 수 있다. The attribute matching unit 230, for each of the extracted column information, indicates whether to display an attribute value (e.g., column type (e.g., binary number, text format, etc.), column information on the view page. , A characteristic of defining the column information such as a selection of a group to which the access right to the column information is granted, a width and a height when the column information is displayed on the view page, and the like. At this time, an attribute value matching the column information may be set by receiving an input from the administrator, but an attribute value matching the column information may be automatically set on the system without additional administrator setting. In the present invention, since the attribute value matching the column information can be automatically set, the administrator can save the trouble of manually setting the attribute value, and control such as changing the program can be performed in a short time. Can also prevent mistakes in setting attribute values incorrectly.

응용 프로그램 관리부 (240) 는 서버 (200) 에서 운용되는 응용 프로그램을 관리한다. 사용자가 특정 응용 프로그램의 실행에 따른 결과를 요청하면, 상기 특정 응용 프로그램을 실행하여 생성된 결과물인 뷰페이지를 사용자단말기 (101, 102) 로 전달한다. 또한, 응용 프로그램이 실행될 때 호출되는 SQL 구문이 존재하고, 상기 SQL 구문이 관리자에 의해 변동된 경우, 응용 프로그램 관리부 (240) 는, 상기 특정 응용 프로그램이 실행될 때 상기 SQL 변동에 따른 결과를 동적으로 연동하고, 그에 따른 뷰페이지를 사용자단말기 (101, 102) 로 전달한다.The application manager 240 manages an application operated on the server 200. When the user requests a result according to the execution of a specific application, the view page, which is a result generated by executing the specific application, is transmitted to the user terminals 101 and 102. In addition, when there is an SQL statement that is called when the application is executed, and the SQL statement is changed by the administrator, the application manager 240 dynamically outputs a result according to the SQL change when the specific application is executed. And the view page accordingly are transmitted to the user terminal (101, 102).

여기서, 응용 프로그램은, 데이터베이스와 연동하며, 데이터베이스에 대한 연산을 수행하는 프로그램으로서, 예를 들어, 동적 웹페이지 스크립트 (예를 들어, asp, php, jsp 로 짜여진 스크립트) 가 될 수 있으며, 상기 응용 프로그램이 실행될 때 SQL 구문을 호출하는 경우, 상기 SQL 구문이 반영되어 예를 들어, html 형태의 뷰페이지로서 사용자에게 디스플레이될 수 있다.In this case, the application program is a program that interoperates with a database and performs operations on the database, and may be, for example, a dynamic web page script (eg, a script written in asp, php, or jsp). When the SQL statement is called when the program is executed, the SQL statement may be reflected and displayed to the user as, for example, a html type view page.

이하에서는, 도 3 내지 도 6 을 참조하여, 본 발명의 바람직한 일 실시예에 따라, 관리자가 데이터베이스를 연산하는 프로그램을 제어하는 동작에 대해 서술한다. Hereinafter, with reference to Figs. 3 to 6, the operation of controlling the program that the administrator operates the database according to an embodiment of the present invention will be described.

도 3 에서 도시된 바와 같이, 서버 (200) 는 사용자단말기 (101, 102) 로부터 입력한 정보에 따라 동작한다 (s310). 만약, 사용자가 서버 (200) 에서 관리되는 응용 프로그램을 실행하고 그 실행결과에 따른 뷰페이지를 요청한 경우, 서버 (200) 는 상기 응용 프로그램을 실행하고 그 결과에 따른 뷰페이지를 사용자단말기 (101, 102) 로 전달한다 (s350). 한편, 관리자가 입력한 정보가 SQL 구문이고, 상기 SQL 구문이 응용 프로그램의 실행시 호출되는 SQL 구문이라면, 상기 SQL 구문이 데이터베이스 (300) 에서 실행되도록 한다. 이때, 데이터베이스 (300) 를 관리하는 DBMS 는 수신된 SQL 구문을 파싱하는 등을 통해 처리하며, 처리결과에 따른 리턴값 (즉, SQL 처리결과) 을 서버 (200) 로 전달한다 (s320). 예를 들어, 도 4 에서 도시된 바와 같이, 사용자단말기 (101) 는 입력 인터페이스 (410) 를 관리자에게 제공하고 있으며, 상기 입력 인터페이스 (410) 를 통해 관리자는 SQL 구문을 입력할 수 있다. 상기 입력된 SQL 구문은 서버 (200) 로 전달되며, 서버 (200) 는 상기 수신된 SQL 구문을 데이터베이스 (300) 로 전달함으로써 상기 SQL 구문에 대한 SQL 처리결과를 획득한다. 예를 들어, 관리자가 도 4 의 420 과 같은 SQL 구문을 입력하면, SQL 의 명령어인 SELECT 명령어에 따른 SQL 처리결과, 즉, 컬럼정보 및 로우정보를 데이터베이스 (300) 로부터 획득할 수 있다.As shown in FIG. 3, the server 200 operates according to information input from the user terminals 101 and 102 (S310). If the user executes the application managed by the server 200 and requests the view page according to the execution result, the server 200 executes the application and displays the view page according to the result of the user terminal 101. 102) (s350). On the other hand, if the information entered by the administrator is an SQL statement, and the SQL statement is an SQL statement that is called at the time of execution of the application program, the SQL statement is to be executed in the database (300). At this time, the DBMS managing the database 300 processes the received SQL syntax through parsing, etc., and transmits a return value (ie, a SQL processing result) according to the processing result to the server 200 (S320). For example, as shown in FIG. 4, the user terminal 101 provides an input interface 410 to an administrator, through which the administrator can input an SQL syntax. The input SQL statement is transmitted to the server 200, and the server 200 obtains an SQL processing result for the SQL statement by transferring the received SQL statement to the database 300. For example, when an administrator inputs an SQL statement such as 420 of FIG. 4, an SQL processing result, that is, column information and row information, according to a SELECT command that is an SQL command may be obtained from the database 300.

상기 SQL 처리결과를 수신하면, 서버 (200) 는 상기 SQL 처리결과로부터 컬럼정보를 추출하고 (s330), 각 컬럼정보에 대한 속성값을 설정한다 (s340). 즉, 도 4 에서 도시된 바와 같이, 도 4 의 410 에 도시된 SQL 구문에 따른 SQL 처리결과로부터 컬럼정보 (430) 을 추출하고, 각 컬럼정보에 대응되는 속성값 (440), 예를 들어, Title, Type, 숨김, 필수, 읽기, Text Align, 제목 Align, width, heigt, 비고 등을 설정한다. 이때, 속성값은 출력 인터페이스에서 뷰페이지가 디스플레이될 때, 각 컬럼정보가 디스플레이되는 모습을 설정하는 값이며, 이러한 속성값을 자동으로 설정하는 방법은 도 6 에서 보다 상세히 서술된다. Upon receiving the SQL processing result, the server 200 extracts column information from the SQL processing result (s330), and sets attribute values for each column information (s340). That is, as shown in FIG. 4, the column information 430 is extracted from the SQL processing result according to the SQL syntax shown in 410 of FIG. 4, and the attribute value 440 corresponding to each column information, for example, Set Title, Type, Hidden, Required, Read, Text Align, Title Align, Width, Heigt, Remark, etc. In this case, the attribute value is a value for setting the appearance of each column information when the view page is displayed in the output interface, and a method of automatically setting the attribute value is described in more detail with reference to FIG. 6.

이후, 설정된 속성값을 반영하여 응용 프로그램의 뷰페이지를 사용자에게 디스플레이한다 (s350). 즉, 이후, SQL 구문을 입력한 사용자단말기 (101; 즉, 관리자) 는 물론, 다른 사용자단말기 (102; 즉, 사용자) 로부터 상기 응용 프로그램 실행결과에 따른 뷰페이지가 요청되는 경우, 상기 컬럼정보 및 설정된 속성값 그리고 SQL 구문에 따른 결과값이 반영된 뷰페이지가 사용자단말기 (101, 102) 로 전달된다. 상기 뷰페이지는 사용자단말기의 출력 인터페이스를 통해 디스플레이된다. 즉, 도 5 에서 도시된 바와 같이, 각 컬럼정보 (500) 는 각기 대응되는 속성값에 따라 디스플레이되고, 상기 각 컬럼정보 (500) 에 대한 로우정보도 함께 디스플레이된다.Thereafter, the view page of the application is displayed to the user by reflecting the set property value (S350). That is, when the view page according to the execution result of the application program is requested from the user terminal 101 (that is, the administrator) as well as other user terminal 102 (that is, the user) who inputs the SQL syntax, the column information and The view page reflecting the set property value and the result value according to the SQL statement is transmitted to the user terminal (101, 102). The view page is displayed via the output interface of the user terminal. That is, as shown in FIG. 5, each column information 500 is displayed according to a corresponding attribute value, and row information about each column information 500 is also displayed.

한편, 서버 (200) 가 SQL 처리결과로부터 컬럼정보를 추출하면, 상기 각 컬럼정보에 대응되는 속성값이 설정되어야 하는데, 이러한 속성값은 관리자가 설정할 필요없이, 서버 (200) 에서 자동으로 설정될 수 있다. On the other hand, when the server 200 extracts column information from the SQL processing result, an attribute value corresponding to each column information should be set, and this attribute value does not need to be set by the administrator, and is automatically set in the server 200. Can be.

도 6 에서 도시된 바와 같이, SQL 처리결과로부터 컬럼정보가 추출되고 속성값을 설정해야 하는 경우, 해당 컬럼정보가 포함되는 폼과 동일한 폼에서 동일한 명칭을 갖는 컬럼정보가 존재하고 상기 컬럼정보에 대한 속성값이 설정되어 있다면, 상기 컬럼정보의 속성값을 적용하며 (s610), 설정되어 있지 않다면 다음 단계로 진행된다. 여기서 폼 (form)은, 예를 들어, 사용자에게 전달되는 뷰 페이지가 디스플레이되는 형식을 포함한다. 예를 들어, 도 4 및 도 5 를 참고하면, '배부기준 생성 및 조회' 뷰페이지를 형성하는 폼 "coc200" 내에서는, 컬럼정보 "cc_cd" 와 동일한 명칭을 갖는 컬럼정보가 없으며, 또한, 다른 뷰페이지에서 사용되는 동일한 폼에서도 컬럼정보 "cc_cd" 와 동일한 명칭을 갖는 컬럼정보가 없으므로, 다음 단계로 진행된다.As shown in FIG. 6, when column information is extracted from an SQL processing result and an attribute value needs to be set, column information having the same name exists in the same form as the form including the corresponding column information, and If the attribute value is set, the attribute value of the column information is applied (s610). If not, the process proceeds to the next step. The form here includes, for example, the form in which the view page delivered to the user is displayed. For example, referring to FIGS. 4 and 5, in the form "coc200" forming the "distribution criteria generation and inquiry" view page, there is no column information having the same name as the column information "cc_cd", There is no column information with the same name as the column information "cc_cd" in the same form used in the view page.

다음 단계에서는, SQL 구문을 분석하여, 컬럼정보가 획득된 데이터베이스의 테이블 정보에 등록된 속성값을 적용한다 (s620). 예를 들어, 도 5 의 450 , 즉 컬럼정보 "qty" 에 대해서는, SQL 구문 (420) 을 분석한 결과 상기 컬럼정보가 획득된 데이터베이스의 테이블, 즉, coc200 이 존재함을 알고 상기 테이블 coc200 에 등록된 컬럼정보 qty 의 속성값을 적용한다. 다만, 컬럼정보 "cc_cd" 에 대해서는, SQL 구문 (420) 분석결과 상기 컬럼정보 "cc_cd" 에 대응되는 테이블 정보에 등록된 속성값을 알 수 없으므로, 다음 단계로 진행된다.In the next step, the SQL syntax is analyzed and the attribute value registered in the table information of the database where the column information is obtained is applied (s620). For example, for 450 in FIG. 5, that is, column information "qty", the SQL statement 420 is analyzed and a table of the database where the column information is obtained, that is, coc200 is known and registered in the table coc200. The attribute value of the column information qty is applied. However, for the column information "cc_cd", the attribute value registered in the table information corresponding to the column information "cc_cd" cannot be known as a result of analyzing the SQL statement 420, and thus proceeds to the next step.

다음 단계에서는, 모든 폼에서, 동일한 명칭을 갖는 컬럼정보에 적용된 속성값들 중에서 가장 많이 사용된 속성값을 적용한다 (s630). 예를 들어, 도 4 의 460, 즉, 컬럼정보 "cc_cd" 는, 동일한 폼 내에 동일한 명칭을 갖는 컬럼정보가 없으며, 또한, SQL 구문을 분석한 결과 대응되는 테이블 정보에 등록된 속성값을 획득할 수 없는 바, 모든 폼 내에서, 동일한 명칭을 갖는 컬럼정보들의 속성값들을 검색하고, 상기 속성값들 중에서 가장 많이 사용된 속성값 (만약 가장 많이 사용된 속성값이 2 개 이상 존재한다면, 랜덤하게 선택된 속성값) 을 획득하여 상기 컬럼정보 "cc_cd" 에 매칭하고 적용한다. 그 결과, 컬럼정보 "cc_cd" 에 대해서는, HRA110 폼 내에서 사용되고 동일한 컬럼정보 명칭을 갖는, 컬럼정보 cc_cd 의 속성값이 적용되고, 그 결과, 자동으로 Title 을 "원가부문", Type 을 "Combo"로 설정하는 등 속성값이 적용된다. 다른 폼에서의 컬럼정보의 속성값이 적용되었음을 나타내기 위해, 도 5 의 460 에서 도시된 바와 같이 비고란에 상기 다른 폼의 명칭을 기재할 수 있다.In the next step, the most used attribute value among the attribute values applied to the column information having the same name is applied to all the forms (s630). For example, 460 of FIG. 4, that is, column information "cc_cd" does not have column information having the same name in the same form, and also obtains an attribute value registered in corresponding table information as a result of analyzing an SQL syntax. In all forms, the attribute values of column information having the same name are searched for, and the most used attribute values among the attribute values (if there are two or more used attribute values, randomly, Obtains the selected attribute value), and matches and applies the column information "cc_cd". As a result, for column information "cc_cd", the attribute value of column information cc_cd, which is used in the HRA110 form and has the same column information name, is applied. As a result, Title is "Cost Division" and Type is "Combo". The property value is applied. To indicate that an attribute value of column information in another form is applied, the name of the other form may be described in the remarks column as shown at 460 of FIG. 5.

이를 통해, 관리자가 번거롭게 컬럼정보에 대응되는 속성값을 설정할 필요없으므로, 관리자는 보다 빠른 시간 내에 간단한 방법으로 응용 프로그램을 제어할 수 있다.In this way, the administrator does not need to set an attribute value corresponding to the column information cumbersomely, and the administrator can control the application program in a simple manner in a shorter time.

이처럼, 본 발명에서는, 관리자가, 응용 프로그램에서 데이터베이스에 대한 연산을 수행하는 부분을 수정하기 위해, 상기 응용 프로그램 전체의 소스코드를 분석할 필요없이, 데이터연산에 관한 부분을 간단한 몇 개의 SQL 명령어로 해결할 수 있다. 이로 인해 관리자는 응용 프로그램이 구체적으로 어떠한 것인지, 또는 응용 프로그램의 구조를 알 필요없이, 간단한 SQL 구문으로 데이터베이스에 액세스하고 원하는 데이터를 획득하거나 데이터베이스를 변경하고, 데이터베이스로부터의 데이터를 연산한 결과를 자신을 포함한 상기 응용 프로그램의 사용자들에게 디스플레이될 수 있도록 한다. 그 결과, 상기 응용 프로그램을 제어하는 데 있어 소요되는 비용 및 시간이 절약되며, 상기 응용 프로그램을 보다 정확하게 제어할 수 있다.As such, in the present invention, an administrator can modify a portion of a data operation with a few simple SQL commands without having to analyze the source code of the entire application in order to modify a portion of an application that performs an operation on a database. I can solve it. This allows administrators to access the database, obtain desired data or change the database, and compute data from the database with simple SQL statements without having to know what the application is or how the application is structured. It can be displayed to users of the application program, including. As a result, the cost and time required to control the application can be saved, and the application can be controlled more accurately.

당업자는 여기에서 개시된 실시형태들과 관련하여 설명된 다양한 예시적인 로직 블록들 및 알고리즘 단계들을 전자 하드웨어, 컴퓨터 소프트웨어, 또는 이들의 조합으로 구현할 수도 있음을 알 수 있다. 하드웨어와 소프트웨어의 이러한 대체 가능성을 분명히 설명하기 위하여, 다양한 예시적인 단계들을 주로 그들의 기능의 관점에서 상술하였다. 그러한 기능이 하드웨어로 구현될지 소프트웨어로 구현될지는 전체 시스템에 부과된 특정 애플리케이션 및 설계 제약 조건들에 의존한다. 당업자는 설명된 기능을 각각의 특정 애플리케이션에 대하여 다양한 방식으로 구현할 수도 있지만, 그러한 구현의 결정이 본 발명의 범주를 벗어나도록 하는 것으로 해석하지는 않아야 한다.Those skilled in the art may appreciate that various example logic blocks and algorithm steps described in connection with the embodiments disclosed herein may be implemented in electronic hardware, computer software, or a combination thereof. To clearly illustrate this possibility of replacing hardware and software, various illustrative steps have been described above primarily in terms of their functionality. Whether such functionality is implemented in hardware or software depends upon the particular application and design constraints imposed on the overall system. Skilled artisans may implement the described functionality in varying ways for each particular application, but should not interpret it as causing a decision of such implementation to fall outside the scope of the present invention.

상기 실시예는 본원발명을 구체적으로 설명하기 위한 예시일 뿐이며, 본 발명은 이들 실시예에 한정되지 않는다. 본 발명의 취지를 일탈하지 않는 범위에서 구성의 부가, 생략, 치환, 및 그 밖의 변경이 가능하다. 본 발명은 전술한 설명에 의해 한정되지 않고, 첨부한 청구범위의 범위에 의해서만 한정된다.The foregoing examples are only illustrative of the present invention in detail, and the present invention is not limited to these examples. Additions, omissions, substitutions, and other modifications can be made without departing from the spirit of the present invention. The present invention is not limited by the foregoing description, but is limited only by the scope of the appended claims.

100 : 서비스제공시스템 101, 102 : 사용자 단말기
200 : 서버 300 : 데이터베이스
210 : 통신부 220 : 사용자요청처리부
230 : 결과분석부 (230) 240 : 속성매칭부
250 : 응용 프로그램 관리부
100: service providing system 101, 102: user terminal
200: server 300: database
210: communication unit 220: user request processing unit
230: result analysis unit 230: attribute matching unit
250: Application Management Department

Claims (7)

데이터베이스와 연동되는 프로그램을 제어하는 시스템에서, 상기 프로그램을 제어하는 방법에 있어서,
관리자에게 입력 인터페이스를 제공하는 단계;
상기 입력 인터페이스를 통해 상기 관리자로부터 SQL 구문을 수신하는 단계;
상기 수신된 SQL 구문을 데이터베이스에서 처리하는 단계;
상기 SQL 처리결과를 수신하고, 상기 SQL 처리결과로부터 컬럼정보를 추출하는 단계; 및
상기 컬럼정보에 대한 속성값을 매칭하는 단계를 포함하고,
상기 매칭하는 단계는,
상기 컬럼정보에 대한 속성값을 자동으로 결정하는 단계; 및
상기 결정된 속성값을 상기 컬럼정보에 대응되도록 매칭하는 단계를 포함하는, 프로그램 제어 방법.
In the system for controlling a program linked with a database, the method for controlling the program,
Providing an input interface to an administrator;
Receiving an SQL statement from the manager via the input interface;
Processing the received SQL statements in a database;
Receiving the SQL processing result and extracting column information from the SQL processing result; And
Matching attribute values for the column information;
The matching step comprises:
Automatically determining an attribute value for the column information; And
And matching the determined attribute value to correspond to the column information.
제 1 항에 있어서,
상기 입력 인터페이스를 통해 사용자로부터 상기 프로그램의 실행 요청을 수신하는 단계; 및
상기 사용자에게, 출력 인터페이스를 통해, 상기 컬럼정보에 대해 상기 매칭된 속성값을 적용한 뷰페이지를 디스플레이하는 단계를 더 포함하는, 프로그램 제어 방법.
The method of claim 1,
Receiving a request to execute the program from a user through the input interface; And
And displaying, to the user, a view page to which the matched attribute value is applied to the column information through an output interface.
삭제delete 제 1 항에 있어서,
상기 결정하는 단계는,
상기 컬럼정보가 사용되는 폼과 동일한 폼에서, 상기 컬럼정보와는 동일한 명칭을 가지면서 매칭되는 속성값이 이미 존재하는 컬럼정보의 속성값을 획득하는 단계; 및
상기 획득된 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함하는, 프로그램 제어 방법.
The method of claim 1,
Wherein the determining comprises:
Acquiring an attribute value of column information in the same form as that in which the column information is used, having the same name as the column information and having a matching attribute value; And
And determining the obtained attribute value as an attribute value of the column information.
제 1 항에 있어서,
상기 결정하는 단계는,
상기 SQL 구문으로부터, 상기 컬럼정보와 대응되는 데이터베이스의 테이블 정보를 획득하는 단계; 및
상기 테이블 정보의 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함하는, 프로그램 제어 방법.
The method of claim 1,
Wherein the determining comprises:
Obtaining table information of a database corresponding to the column information from the SQL statement; And
And determining an attribute value of the table information as an attribute value of the column information.
제 1 항에 있어서,
상기 결정하는 단계는,
상기 컬럼정보와는 동일한 명칭을 가지면서 매칭되는 속성값이 이미 존재하는 컬럼정보의 속성값을 모든 폼에서 검색하는 단계;
상기 검색된 속성값 중 가장 많은 빈도수로 나타나는 속성값을 획득하는 단계; 및
상기 획득된 속성값을 상기 컬럼정보의 속성값으로 결정하는 단계를 포함하는, 프로그램 제어 방법.
The method of claim 1,
Wherein the determining comprises:
Retrieving, in all forms, the attribute value of column information having the same name as the column information and having a matching attribute value;
Acquiring attribute values represented by the highest frequency among the retrieved attribute values; And
And determining the obtained attribute value as an attribute value of the column information.
데이터베이스와 연동되는 프로그램을 제어하는 시스템으로서,
관리자에게 입력 인터페이스를 제공하도록 구성되는 사용자단말기;
상기 사용자단말기로부터 SQL 구문을 수신하고, 상기 SQL 구문을 데이터베이스로 전달하도록 구성되는 서버; 및
상기 서버로부터 수신되는 SQL 구문을 처리하도록 구성되는 데이터베이스를 포함하고,
상기 서버는,
상기 데이터베이스로부터 SQL 처리결과를 수신하고, 상기 SQL 처리결과로부터 컬럼정보를 추출하며, 상기 컬럼정보에 대한 속성값을 매칭하되 상기 컬럼정보에 대한 속성값을 자동으로 결정하고 상기 결정된 속성값을 상기 컬럼정보에 대응시켜 매칭하도록 추가적으로 구성되는, 프로그램 제어 시스템.
As a system to control a program linked with a database,
A user terminal configured to provide an input interface to an administrator;
A server configured to receive an SQL statement from the user terminal and to deliver the SQL statement to a database; And
A database configured to process the SQL syntax received from the server,
The server comprises:
Receive SQL processing results from the database, extract column information from the SQL processing results, match attribute values for the column information, and automatically determine attribute values for the column information, and determine the determined attribute values for the column. And further configured to match in correspondence with the information.
KR1020110091203A 2011-09-08 2011-09-08 Method and system for providing service for controlling program linked to database KR101351079B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020110091203A KR101351079B1 (en) 2011-09-08 2011-09-08 Method and system for providing service for controlling program linked to database

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110091203A KR101351079B1 (en) 2011-09-08 2011-09-08 Method and system for providing service for controlling program linked to database

Publications (2)

Publication Number Publication Date
KR20130027767A KR20130027767A (en) 2013-03-18
KR101351079B1 true KR101351079B1 (en) 2014-01-14

Family

ID=48178539

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110091203A KR101351079B1 (en) 2011-09-08 2011-09-08 Method and system for providing service for controlling program linked to database

Country Status (1)

Country Link
KR (1) KR101351079B1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101864700B1 (en) * 2016-07-04 2018-07-13 한다시스템 주식회사 Method and computer program for integrating spread sheet with database

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102099362B1 (en) * 2018-10-08 2020-04-09 (주)디지탈쉽 Device and method for a data preparation using a micro service

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09146803A (en) * 1995-11-28 1997-06-06 Hitachi Ltd Data base access system
US5832481A (en) * 1991-08-20 1998-11-03 Powersoft Corporation Reuseable and modifiable interface object
KR20100084404A (en) * 2009-01-16 2010-07-26 정해영 Method of creating application program source for database and device thereof

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5832481A (en) * 1991-08-20 1998-11-03 Powersoft Corporation Reuseable and modifiable interface object
JPH09146803A (en) * 1995-11-28 1997-06-06 Hitachi Ltd Data base access system
KR20100084404A (en) * 2009-01-16 2010-07-26 정해영 Method of creating application program source for database and device thereof

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101864700B1 (en) * 2016-07-04 2018-07-13 한다시스템 주식회사 Method and computer program for integrating spread sheet with database

Also Published As

Publication number Publication date
KR20130027767A (en) 2013-03-18

Similar Documents

Publication Publication Date Title
EP3008617B1 (en) Automatic customization of a software application
US9098314B2 (en) Systems and methods for web based application modeling and generation
US9047346B2 (en) Reporting language filtering and mapping to dimensional concepts
US10785128B1 (en) System, apparatus and method for deploying infrastructure to the cloud
US7984115B2 (en) Extensible application platform
US20130159036A1 (en) Runtime generation of instance contexts via model-based data relationships
US8881127B2 (en) Systems and methods to automatically generate classes from API source code
US9953331B2 (en) Extensibility for sales predictor (SPE)
US20220035847A1 (en) Information retrieval
US20240119225A1 (en) Domain-specific language interpreter and interactive visual interface for rapid screening
US20180365304A1 (en) Systems and methods for making visual data representations actionable
Powell Microsoft Power BI cookbook: Creating business intelligence solutions of analytical data models, reports, and dashboards
EP3486798A1 (en) Reporting and data governance management
US9990348B2 (en) System and method for managing data using a spreadsheet model
US20170132195A1 (en) Method and Apparatus Providing Contextual Suggestion in Planning Spreadsheet
US8402433B2 (en) Method and system for performing automated transactions using a server-side script-engine
US20210124752A1 (en) System for Data Collection, Aggregation, Storage, Verification and Analytics with User Interface
KR101351079B1 (en) Method and system for providing service for controlling program linked to database
US20190138965A1 (en) Method and system for providing end-to-end integrations using integrator extensible markup language
KR102244887B1 (en) Method and system for recommending SQL query
KR20130126012A (en) Method and apparatusfor providing report of business intelligence
US10318524B2 (en) Reporting and data governance management
US20230195792A1 (en) Database management methods and associated apparatus
US20190130012A1 (en) Flexible organizational hierarchy
KR102240891B1 (en) Method and system for generating multi-dimension analytic report

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20161021

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181024

Year of fee payment: 6