CN110633291A - 一种数据库访问方法、装置及电子设备 - Google Patents
一种数据库访问方法、装置及电子设备 Download PDFInfo
- Publication number
- CN110633291A CN110633291A CN201910684692.9A CN201910684692A CN110633291A CN 110633291 A CN110633291 A CN 110633291A CN 201910684692 A CN201910684692 A CN 201910684692A CN 110633291 A CN110633291 A CN 110633291A
- Authority
- CN
- China
- Prior art keywords
- database
- database access
- driving information
- type
- access method
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
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/24—Querying
- G06F16/242—Query formulation
- G06F16/2433—Query languages
-
- 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/24—Querying
- G06F16/245—Query processing
- G06F16/2455—Query execution
-
- 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
Abstract
本申请公开了一种数据库访问方法、装置及电子设备,数据库访问方法包括:获取数据库访问请求,数据库访问请求包括数据库类型和数据库连接地址;根据数据库连接地址与对应的数据库建立连接;根据数据库类型加载对应的驱动信息;根据驱动信息访问数据库。本申请提供的数据库访问方法、装置及电子设备,统一不同数据库的接口调用形式,简化数据库操作的代码,提高开发效率。
Description
技术领域
本申请涉及数据库领域,尤其涉及一种数据库访问方法、装置及电子设备。
背景技术
JDBC是一种用于执行SQL语句的Java API,可以为多种关系数据库提供统一访问,它由一组用Java语言编写的类和接口组成。JAVA开发中用JDBC驱动来实现对数据库操作的规范,在JDBC中定义了如何链接数据库(Connection),如何操作数据(ResultSet,Stement)和事务管理(Transcation,SavePoint...)。不同的数据库的连接使用方式不同,需要调用不同的接口来访问数据库,操作数据库比较繁琐,代码复杂,因此使用代码错误率较高,影响开发效率。
发明内容
为了克服现有技术中访问不同数据库代码错误率高、影响开发效率的问题,本申请的目的在于提供一种数据库访问方法、装置及电子设备。
本申请提供一种数据库访问方法,所述数据库访问方法包括:
获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
根据所述数据库连接地址与对应的数据库建立连接;
根据所述数据库类型加载对应的驱动信息;
根据所述驱动信息访问所述数据库。
进一步地,所述根据所述数据库类型加载对应的驱动信息,具体包括:
从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
进一步地,在所述获取数据库访问请求之前,所述数据库访问方法还包括:
在所述数据库容器中建立数据库类型与驱动信息的对应关系。
进一步地,在所述获取数据库访问请求之前,所述数据库访问方法还包括:
对不同数据库的连接方式进行封装编译。
进一步地,在所述根据所述驱动信息访问所述数据库之前,所述数据库访问方法还包括:
根据所述驱动信息初始化所述数据库。
进一步地,所述数据库访问方法还包括:
获取数据库操作指令;
根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
进一步地,所述数据库操作指令包括:增加、删除、修改、查询、连接或释放。
本申请还提供一种数据库访问装置,所述数据库访问装置包括:
获取模块,用于获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
连接模块,用于根据所述数据库连接地址与对应的数据库建立连接;
加载模块,用于根据所述数据库类型加载对应的驱动信息;
访问模块,用于根据所述驱动信息访问所述数据库。
进一步地,所述加载模块还用于:从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
进一步地,所述获取模块还用于在所述获取数据库访问请求之前,在所述数据库容器中建立数据库类型与驱动信息的对应关系。
进一步地,所述获取模块还用于在所述获取数据库访问请求之前,对不同数据库的连接方式进行封装编译。
进一步地,所述访问模块还用于:在根据所述驱动信息访问所述数据库之前,根据所述驱动信息初始化所述数据库。
进一步地,所述访问模块还用于获取数据库操作指令,及用于根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
本申请还提供一种电子设备,包括处理器和存储器,所述存储器中存储有数据库访问程序,所述数据库访问程序被配置成由所述处理器执行,所述数据库访问程序被所述处理器执行时实现:
获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
根据所述数据库连接地址与对应的数据库建立连接;
根据所述数据库类型加载对应的驱动信息;
根据所述驱动信息访问所述数据库。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
在所述数据库容器中建立数据库类型与驱动信息的对应关系。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
在所述获取数据库访问请求之前,对不同数据库的连接方式进行封装编译。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
根据所述驱动信息初始化所述数据库。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
获取数据库操作指令;
根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
相比现有技术,本申请的有益效果在于:通过获取数据库类型和数据库连接地址,根据数据库连接地址与对应的数据库建立连接,根据数据库类型加载对应的驱动信息,根据驱动信息访问数据库,从而统一不同数据库的接口调用形式,简化数据库操作的代码,提高开发效率。
附图说明
图1为本申请实施例提供的数据库访问方法流程图;
图2为本申请实施例提供的数据库访问装置示意图;
图3为本申请实施例提供的电子设备的内部结构图。
具体实施方式
下面,结合附图以及具体实施方式,对本申请做进一步描述,需要说明的是,在不相冲突的前提下,以下描述的各实施例之间或各技术特征之间可以任意组合形成新的实施例。
本申请提供的数据库访问方法应用于不同数据库的访问和操作,例如DB2、Oracle、Mysql等数据库的统一访问。
如图1所示,本申请实施例提供的数据库访问方法,包括:
步骤S101:获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址。
其中,在获取数据库访问请求之前,对不同数据库的连接方式进行封装编译,例如,不同数据库的连接方式被封装编译成.so或者dll的形式,从而实现代码的复用性,方便调用。不同类型的数据库加载不同的驱动信息,将加载成功的驱动信息放入数据库容器中,例如mD rivers容器中,形成统一的调用接口。调用接口获取数据库类型和数据库连接地址。例如,选择数据库类型:
DriverManager::loadDriver(“db2”);或DriverManager::loadDriver(“oracle”);
建立连接:DriverManager::getConnection(“数据库连接地址”)。
步骤S102:根据所述数据库连接地址与对应的数据库建立连接。
例如,根据用户提供的用户名、密码、数据库存储路径或者数据库名称与对应的数据库建立连接。
步骤S103:根据所述数据库类型加载对应的驱动信息。
在一种实施方式中,在获取数据库访问请求之前,将驱动加载成功后的句柄和驱动信息放到数据库容器中进行管理,在数据库容器中建立数据库类型与驱动信息的对应关系。其中,驱动信息包括驱动版本号、驱动名称[mysql,db2,oracle,informix]、驱动程序路径、驱动程序状态等。
例如,采用cdbc写数据库操作的基类,oracle和db2数据库分别对不同数据的操作封装。cdbc结构包括数据库驱动Driver、驱动管理DriverManager、结果集信息ResultSetMetaData、查询结果集ResultSet、SQL执行环境Statement、数据库信息DatabaseMetaData、简化查询类SimpleQuery。db2结构包括DB2数据库驱动DriverDB2、DB2结果集属性ResultSetMetaDataDB2、DB2结果集ResultSetDB2、SQL执行环境StatementDB2。oracle结构包括Oracle数据库驱动DriverOra、Ora结果集属性ResultSetMetaDataOra、SQL执行环境StatementOra、Ora数据连接对象ConnectionOra。
根据数据库类型加载对应的驱动信息,具体包括:遍历数据库容器,从数据库容器中调用与数据库类型对应的句柄和驱动信息,以取出驱动对象行相关数据库的操作代码。
步骤S104:根据所述驱动信息访问所述数据库。
在一种实施方式中,调用接口加载驱动信息后,根据驱动信息初始化数据库,初始化成功后,调用驱动信息访问数据库。
在一种实施方式中,驱动信息加载成功后,获取用户对数据库的操作指令,根据操作指令和驱动信息调用对应的SQL语句。其中,操作指令包括对数据库进行增加、删除、修改、查询、连接、释放等操作。例如:
查询:
String strWhere=“SELECT PROCSTATE FROM STUDENT ORDER BY INPUTTIMEFETCH FIRST 10ROW ONLY";
setSQL(strWhere);//执行SQL语句
setInt(nIndex,Val);//绑定查询结果并获取结果值
增加数据:
String strWhere=“INSERT INTO PORequestEntry SELECT*FROMPORequestEntry where finterid=10801“;
setSQL(strWhere);//执行SQL语句
删除一行数据:
String strWhere=“DELETE FROM STUDENT WHERE finterid=10801”;
setSQL(strWhere);//执行SQL语句
修改表中数据:
String strWhere=“UPDATTE STUDENT SET finterid=10801WHERE finterid=10000”。
本申请实施例提供的数据库访问方法,根据数据库类型加载对应的驱动信息,根据驱动信息和数据库连接地址访问对应的数据库,不同的数据库采用统一的调用接口,简化操作代码,降低代码错误率,提高开发效率。
如图2所示,本申请实施例提供的数据库访问装置,包括:
获取模块10,用于获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
连接模块20,用于根据所述数据库连接地址与对应的数据库建立连接;
加载模块30,用于根据所述数据库类型加载对应的驱动信息;
访问模块40,用于根据所述驱动信息访问所述数据库。
进一步地,所述加载模块30还用于:从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
进一步地,所述获取模块10还用于在所述获取数据库访问请求之前,在所述数据库容器中建立数据库类型与驱动信息的对应关系。
进一步地,所述获取模块10还用于在所述获取数据库访问请求之前,对不同数据库的连接方式进行封装编译。
进一步地,所述访问模块40还用于:在根据所述驱动信息访问所述数据库之前,根据所述驱动信息初始化所述数据库。
进一步地,所述访问模块40还用于获取数据库操作指令,及用于根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
本申请还提供一种电子设备,图3为本申请提供的电子设备的内部结构图。
在本实施例中,电子设备可以是PC(Personal Computer,个人电脑),也可以是智能手机、平板电脑、便携计算机等终端设备。该电子设备至少包括存储器11、处理器12、通信总线13以及网络接口14。
其中,存储器11至少包括一种类型的可读存储介质,所述可读存储介质包括闪存、硬盘、多媒体卡、卡型存储器(例如,SD或DX存储器等)、磁性存储器、磁盘、光盘等。存储器11在一些实施例中可以是电子设备的内部存储单元,例如该电子设备的硬盘。存储器11在另一些实施例中也可以是电子设备的外部存储设备,例如电子设备上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(FlashCard)等。进一步地,存储器11还可以既包括电子设备的内部存储单元也包括外部存储设备。存储器11不仅可以用于存储安装于电子设备的应用软件及各类数据,例如数据库访问程序01的代码等,还可以用于暂时地存储已经输出或者将要输出的数据。
处理器12在一些实施例中可以是一中央处理器(Central Processing Unit,CPU)、控制器、微控制器、微处理器或其他数据处理芯片,用于运行存储器11中存储的程序代码或处理数据,例如执行数据库访问程序01等。
所述数据库访问程序被所述处理器执行时实现:
获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
根据所述数据库连接地址与对应的数据库建立连接;
根据所述数据库类型加载对应的驱动信息;
根据所述驱动信息访问所述数据库。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
在所述数据库容器中建立数据库类型与驱动信息的对应关系。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
在所述获取数据库访问请求之前,对不同数据库的连接方式进行封装编译。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
根据所述驱动信息初始化所述数据库。
进一步地,所述数据库访问程序被所述处理器执行时还实现:
获取数据库操作指令;
根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
该总线13可以是外设部件互连标准(peripheral component interconnect,简称PCI)总线或扩展工业标准结构(extended industry standard architecture,简称EISA)总线等。该总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
进一步地,电子设备还可以包括网络接口14,网络接口14可选的可以包括有线接口和/或无线接口(如WI-FI接口、蓝牙接口等),通常用于在该电子设备与其他电子设备之间建立通信连接。
图3仅示出了具有组件11-14以及数据库访问程序01的电子设备,本领域技术人员可以理解的是,图3示出的结构并不构成对电子设备的限定,可以包括比图示更少或者更多的部件,或者组合某些部件,或者不同的部件布置。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来。本申请还涉及一种计算机可读存储介质,如ROM/RAM、磁碟、光盘等,其上存储有计算机程序,计算机程序被处理器执行时实现数据库访问法。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,该单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
需要说明的是,上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。并且本文中的术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
上述实施方式仅为本申请的优选实施方式,不能以此来限定本申请保护的范围,本领域的技术人员在本申请的基础上所做的任何非实质性的变化及替换均属于本申请所要求保护的范围。
Claims (10)
1.一种数据库访问方法,其特征在于,所述数据库访问方法包括:
获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
根据所述数据库连接地址与对应的数据库建立连接;
根据所述数据库类型加载对应的驱动信息;
根据所述驱动信息访问所述数据库。
2.根据权利要求1所述的数据库访问方法,其特征在于,所述根据所述数据库类型加载对应的驱动信息,具体包括:
从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
3.根据权利要求2所述的数据库访问方法,其特征在于,在所述获取数据库访问请求之前,所述数据库访问方法还包括:
在所述数据库容器中建立数据库类型与驱动信息的对应关系。
4.根据权利要求1所述的数据库访问方法,其特征在于,在所述获取数据库访问请求之前,所述数据库访问方法还包括:
对不同数据库的连接方式进行封装编译。
5.根据权利要求1所述的数据库访问方法,其特征在于,在所述根据所述驱动信息访问所述数据库之前,所述数据库访问方法还包括:
根据所述驱动信息初始化所述数据库。
6.根据权利要求1所述的数据库访问方法,其特征在于,所述数据库访问方法还包括:
获取数据库操作指令;
根据所述数据库操作指令和所述驱动信息调用对应的SQL语句。
7.根据权利要求6所述的数据库访问方法,其特征在于,所述数据库操作指令包括:增加、删除、修改、查询、连接或释放。
8.一种数据库访问装置,其特征在于,所述数据库访问装置包括:
获取模块,用于获取数据库访问请求,所述数据库访问请求包括数据库类型和数据库连接地址;
连接模块,用于根据所述数据库连接地址与对应的数据库建立连接;
加载模块,用于根据所述数据库类型加载对应的驱动信息;
访问模块,用于根据所述驱动信息访问所述数据库。
9.根据权利要求8所述的数据库访问装置,其特征在于,所述加载模块还用于:从数据库容器中调用与所述数据库类型对应的句柄和驱动信息。
10.一种电子设备,其特征在于,包括处理器和存储器,所述存储器中存储有数据库访问程序,所述数据库访问程序被配置成由所述处理器执行,所述数据库访问程序被所述处理器执行时实现如权利要求1-7任意一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910684692.9A CN110633291A (zh) | 2019-07-26 | 2019-07-26 | 一种数据库访问方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910684692.9A CN110633291A (zh) | 2019-07-26 | 2019-07-26 | 一种数据库访问方法、装置及电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110633291A true CN110633291A (zh) | 2019-12-31 |
Family
ID=68969567
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910684692.9A Pending CN110633291A (zh) | 2019-07-26 | 2019-07-26 | 一种数据库访问方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110633291A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641741A (zh) * | 2021-08-03 | 2021-11-12 | 广东电网有限责任公司 | 基于jdbc的多数据库接入方法、装置及电子设备 |
CN114090124A (zh) * | 2021-11-23 | 2022-02-25 | 智器云南京信息科技有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1567301A (zh) * | 2003-06-23 | 2005-01-19 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN103488765A (zh) * | 2013-09-28 | 2014-01-01 | 雷虹 | 一种代理数据库的访问驱动及其数据访问方法 |
CN107766526A (zh) * | 2017-10-26 | 2018-03-06 | 中国人民银行清算总中心 | 数据库访问方法、装置及系统 |
CN109960709A (zh) * | 2019-04-18 | 2019-07-02 | 上海达梦数据库有限公司 | 一种数据库驱动的处理方法、装置、设备及存储介质 |
-
2019
- 2019-07-26 CN CN201910684692.9A patent/CN110633291A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1567301A (zh) * | 2003-06-23 | 2005-01-19 | 华为技术有限公司 | 访问数据库的方法及装置 |
CN103488765A (zh) * | 2013-09-28 | 2014-01-01 | 雷虹 | 一种代理数据库的访问驱动及其数据访问方法 |
CN107766526A (zh) * | 2017-10-26 | 2018-03-06 | 中国人民银行清算总中心 | 数据库访问方法、装置及系统 |
CN109960709A (zh) * | 2019-04-18 | 2019-07-02 | 上海达梦数据库有限公司 | 一种数据库驱动的处理方法、装置、设备及存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113641741A (zh) * | 2021-08-03 | 2021-11-12 | 广东电网有限责任公司 | 基于jdbc的多数据库接入方法、装置及电子设备 |
CN114090124A (zh) * | 2021-11-23 | 2022-02-25 | 智器云南京信息科技有限公司 | 数据处理方法、装置、计算机设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6240422B1 (en) | Object to relational database mapping infrastructure in a customer care and billing system | |
CN109933571B (zh) | 数据库设计文档生成方法、装置及计算机可读存储介质 | |
CN109492053B (zh) | 用于访问数据的方法和装置 | |
CN110647316B (zh) | 通用业务对象的生成方法、装置、计算机设备及存储介质 | |
CN110633291A (zh) | 一种数据库访问方法、装置及电子设备 | |
CN112631684B (zh) | 可执行程序的运行方法、装置、电子设备及计算机存储介质 | |
CN110399386B (zh) | 一种基于Presto的SQL UPDATE方法及控制系统 | |
CN116644122A (zh) | 数据事务处理方法、装置、计算机设备及存储介质 | |
CN113568603B (zh) | 组件对象创建及接口方法调用方法、终端及存储装置 | |
CN116466915A (zh) | 一种基于MVP架构的iOS开发框架构建方法和装置 | |
CN107463423B (zh) | 依赖包工具的验证方法、存储介质、电子设备及系统 | |
CN107480210B (zh) | 内存数据操作方法及装置 | |
CN116450134A (zh) | 可配置的前端控件校验控制器生成方法及系统 | |
CN112114778B (zh) | 一种支持水平扩展的跨平台动态库算法管理系统 | |
CN111400281B (zh) | 一种面向oss对象存储的gis数据质检与入库方法 | |
CN114385184A (zh) | 一种用于Lua代码嵌入的编译方法、装置、终端及存储介质 | |
CN110275710B (zh) | 一种Java本地接口一致性检查方法及系统、存储介质及终端 | |
JP4728675B2 (ja) | 順序なしコレクションおよび順序つきコレクションをデータストアに構築するためのシステムおよび方法 | |
WO2021051614A1 (zh) | 访问数据库的方法、装置、设备及计算机可读存储介质 | |
US8490105B2 (en) | Pluggable component interface | |
CN111459933A (zh) | Gdb数据动态扩展方法、装置及存储介质 | |
WO2019153547A1 (zh) | 数据库操作方法、装置、设备及计算机可读存储介质 | |
CN113885963B (zh) | 一种二次开发文件执行方法、装置及存储介质 | |
CN114328453A (zh) | Kv数据库数据管理方法、装置、计算设备及存储介质 | |
CN114518844B (zh) | 一种数据处理方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |