Maison base de données tutoriel mysql 利用IBM Java Toolbox for i实现针对数据库文件的记录级访问

利用IBM Java Toolbox for i实现针对数据库文件的记录级访问

Jun 07, 2016 pm 05:54 PM
ibm 数据库

从文件系统的角度,IBM i 提供了对 POSIX 类文件系统 IFS(或集成文件系统)的强大支持。从数据库的角度,IBM i 内置有关系数据库 DB2。作为 IBM i 平台应用普遍的数据库文件,则是以文件的视图访问数据库。

对于从事 IBM i 平台的应用开发而言,如何使用 IBM Java Toolbox for i 访问文件是非常重要的技能。本文的目标是系统性介绍如何利用 IBM Java Toolbox for i 实现针对数据库文件的记录级访问(RLA 或 Record Level Access),并指出 JDBC 与 RLA 两种技术的区别。

从文件系统的角度,IBM i 提供了对 POSIX 类文件系统 IFS(或集成文件系统)的强大支持。从数据库的角度,IBM i 内置有关系数据库 DB2。作为 IBM i 平台应用普遍的数据库文件,则是以文件的视图访问数据库。对于从事 IBM i 平台的数据库应用开发而言,如何使用 IBM Java Toolbox for i 访问数据库文件是非常重要的技能。本文的目标是系统性介绍如何利用 IBM Java Toolbox for i 实现针对数据库文件的记录级访问(RLA 或 Record Level Access),并指出 JDBC 与 RLA 两种技术的区别。

从文章结构上,本文首先介绍 IBM i 数据库文件的基础知识。接下来,以客户信息数据库为例,指导读者如何使用 IBM Java Toolbox for i 创建数据库文件,然后添加、检索、更新与删除客户记录。另外,关于 IBM Java Toolbox for i 对数据库锁,游标,事务的相关支持,本文也所涉及。

IBM i 数据库文件

我们从文件系统与数据库这两个维度分别介绍 IBM i 数据库文件的基本概念。

IFS 文件 vs 数据库文件

首先,从文件的角度,IBM i 提供两种文件资源形式:IFS 文件与数据库文件。所谓 IFS(或 Integrated File System)指的是一种 POSIX 类文件系统,文件存在形式是一个字节序列,没有任何数据格式。IFS 的访问方式分为顺序与随机两种。而数据库文件具有指定的数据格式。我们称数据库文件的访问方式为记录级访问。有关 IFS 文件与数据库文件的区别,见图 1。

图 1. IFS 文件 vs 数据库文件
图 1 IFS 文件 vs 数据库文件

DB2 vs 数据库文件

接下来,我们从数据库的角度对比数据库文件与数据库表。表 1 描述了 IBM i 系统对象和 DB2 对象的对应关系。结合清单 1,我们可以简单地认为,IBM i 数据库文件有若干数据记录组成,这些数据记录以文件成员(Member)的形式呈现,每一个成员提供访问数据记录的路径。而每一条记录由各个字段组成,其对应关系为:行(Row) – 记录(Record), 列(Column) – 字段(Field)。从这个角度而言,数据库表的记录格式与物理文件的记录格式完全相同。

表 1 IBM i 系统对象和 DB2 对象的对应关系

DB2 对象 IBM i 对象
模式(Schema) 库(Library)
表(Table) 数据库文件(Database Files)

JDBC 访问 vs 基于 RLA 访问

对于数据库的操作,无论从关系型数据库表的角度,还是 IBM i 数据库文件的角度,IBM Java Toolbox for i 均提供了 OO 编程级别的支持。

JDBC 是一种以 SQL 语句为核心的标准编程接口。IBM Java Toolbox for i 提供了标准的 JDBC 数据库编程实现。RLA(Record Level Access)则是一种以 SQL API 为核心的数据库文件访问技术。换句话说,不同于 IBM Java Toolbox for i 与数据库主机基于 Socket 的请求 / 相应式交互模式,RLA 直接调用 IBM i 底层的 Call Level Interface(调用级接口),属于直接调用 IBM i 本地 API 的方式,因此数据库的访问性能上要优于前者。

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment le langage Go implémente-t-il les opérations d'ajout, de suppression, de modification et de requête de la base de données ? Comment le langage Go implémente-t-il les opérations d'ajout, de suppression, de modification et de requête de la base de données ? Mar 27, 2024 pm 09:39 PM

Le langage Go est un langage de programmation efficace, concis et facile à apprendre. Il est privilégié par les développeurs en raison de ses avantages en programmation simultanée et en programmation réseau. Dans le développement réel, les opérations de base de données font partie intégrante. Cet article explique comment utiliser le langage Go pour implémenter les opérations d'ajout, de suppression, de modification et de requête de base de données. Dans le langage Go, nous utilisons généralement des bibliothèques tierces pour faire fonctionner les bases de données, telles que les packages SQL couramment utilisés, gorm, etc. Ici, nous prenons le package SQL comme exemple pour présenter comment implémenter les opérations d'ajout, de suppression, de modification et de requête de la base de données. Supposons que nous utilisons une base de données MySQL.

iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées iOS 18 ajoute une nouvelle fonction d'album 'Récupéré' pour récupérer les photos perdues ou endommagées Jul 18, 2024 am 05:48 AM

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Comment Hibernate implémente-t-il le mappage polymorphe ? Comment Hibernate implémente-t-il le mappage polymorphe ? Apr 17, 2024 pm 12:09 PM

Le mappage polymorphe Hibernate peut mapper les classes héritées à la base de données et fournit les types de mappage suivants : join-subclass : crée une table séparée pour la sous-classe, incluant toutes les colonnes de la classe parent. table par classe : créez une table distincte pour les sous-classes, contenant uniquement des colonnes spécifiques aux sous-classes. union-subclass : similaire à join-subclass, mais la table de classe parent réunit toutes les colonnes de la sous-classe.

Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Tutoriel détaillé sur l'établissement d'une connexion à une base de données à l'aide de MySQLi en PHP Jun 04, 2024 pm 01:42 PM

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Une analyse approfondie de la façon dont HTML lit la base de données Une analyse approfondie de la façon dont HTML lit la base de données Apr 09, 2024 pm 12:36 PM

HTML ne peut pas lire directement la base de données, mais cela peut être réalisé via JavaScript et AJAX. Les étapes comprennent l'établissement d'une connexion à la base de données, l'envoi d'une requête, le traitement de la réponse et la mise à jour de la page. Cet article fournit un exemple pratique d'utilisation de JavaScript, AJAX et PHP pour lire les données d'une base de données MySQL, montrant comment afficher dynamiquement les résultats d'une requête dans une page HTML. Cet exemple utilise XMLHttpRequest pour établir une connexion à la base de données, envoyer une requête et traiter la réponse, remplissant ainsi les données dans les éléments de la page et réalisant la fonction de lecture HTML de la base de données.

Comment gérer les erreurs de connexion à la base de données en PHP Comment gérer les erreurs de connexion à la base de données en PHP Jun 05, 2024 pm 02:16 PM

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.

Conseils et pratiques pour gérer les caractères chinois tronqués dans les bases de données avec PHP Conseils et pratiques pour gérer les caractères chinois tronqués dans les bases de données avec PHP Mar 27, 2024 pm 05:21 PM

PHP est un langage de programmation back-end largement utilisé dans le développement de sites Web. Il possède de puissantes fonctions d'exploitation de bases de données et est souvent utilisé pour interagir avec des bases de données telles que MySQL. Cependant, en raison de la complexité du codage des caractères chinois, des problèmes surviennent souvent lorsqu'il s'agit de caractères chinois tronqués dans la base de données. Cet article présentera les compétences et les pratiques de PHP dans la gestion des caractères chinois tronqués dans les bases de données, y compris les causes courantes des caractères tronqués, les solutions et des exemples de code spécifiques. Les raisons courantes pour lesquelles les caractères sont tronqués sont des paramètres de jeu de caractères incorrects dans la base de données : le jeu de caractères correct doit être sélectionné lors de la création de la base de données, comme utf8 ou u.

Comment utiliser les fonctions de rappel de base de données dans Golang ? Comment utiliser les fonctions de rappel de base de données dans Golang ? Jun 03, 2024 pm 02:20 PM

L'utilisation de la fonction de rappel de base de données dans Golang peut permettre : d'exécuter du code personnalisé une fois l'opération de base de données spécifiée terminée. Ajoutez un comportement personnalisé via des fonctions distinctes sans écrire de code supplémentaire. Des fonctions de rappel sont disponibles pour les opérations d'insertion, de mise à jour, de suppression et de requête. Vous devez utiliser la fonction sql.Exec, sql.QueryRow ou sql.Query pour utiliser la fonction de rappel.

See all articles