Maison tutoriels informatiques connaissances en informatique Quelle est la solution au problème des espaces dans les données de type CHAR dans Oracle ?

Quelle est la solution au problème des espaces dans les données de type CHAR dans Oracle ?

Jan 15, 2024 pm 06:21 PM

Quelle est la solution au problème des espaces dans les données de type CHAR dans Oracle ?

Existe-t-il un moyen de supprimer la valeur nulle dans les données de type CHAR dans Oracle

Vous pouvez utiliser un script pour convertir tous les champs de type CHAR en type VARCHAR2 et couper les espaces dans la chaîne, comme suit :

déclarer

commencer

pour c in (sélectionnez *

de user_tab_columns t1

où t1.DATA_TYPE = 'CHAR'

) boucle

exécuter immédiatement 'altérer la table' || c.table_name || 'add g_w_' || c.column_name || 'varchar2(' || c.char_length || ')';

exécuter la 'mise à jour' immédiate || c.table_name || 'set g_w_' || c.column_name ||

exécuter la 'mise à jour' immédiate || c.table_name || 'set' || c.column_name ||

exécuter immédiatement 'altérer la table' || c.table_name || 'modifier' || c.column_name || 'varchar2(' || c.char_length || ')';

exécuter la 'mise à jour' immédiate || c.table_name || 'set ' || c.column_name || ' = trim(g_w_' || c.column_name || ')';

exécuter immédiatement 'altérer la table' || c.table_name || 'drop column g_w_' ||

fin de boucle ;

fin;

Comment supprimer les caractères de type espace dans la structure des tables de base de données Oracle

1. Tout d'abord, supprimez les espaces avant la comparaison (par exemple, supprimez tous les espaces dans les noms) :

Mettre à jour table_name set xm=replace(xm, ' ') ;

Si vous souhaitez trouver quels enregistrements contiennent « », vous pouvez utiliser les instructions associées pour effectuer la recherche.

Ensuite, vous pouvez comparer.

2. Cependant, nous pouvons constater qu'il y a des caractères similaires à des espaces au milieu ou à la fin de certains noms qui n'ont pas été supprimés, mais ce ne sont évidemment pas des espaces ordinaires, nous soupçonnons donc que Tab Jian est en faute. J'ai donc suivi la méthode de suppression de la touche TAB mentionnée sur Internet, et utilisé chr(9) pour remplacer la barre d'espace (la valeur ASCII de la touche TAB est 9). Prenez d'abord un enregistrement avec des caractères de type espace pour expérimenter :

SELECT replace(xm, chr(9) ) from table_name où ;

L'utilisation de cette méthode supprimera certains espaces de touches de tabulation réels, puis adoptera la méthode de mise à jour par lots.

3. Mais la situation que j'ai rencontrée n'a pas été aussi chanceuse et je n'ai pas réussi à retirer la clé en forme d'espace. Comment faire? J'ai décidé d'essayer d'abord d'obtenir la valeur du code ASCII de cette clé d'espace, puis d'utiliser la méthode chr (valeur du code ASCII) pour la traiter.

①.Obtenez la longueur () de la chaîne entière contenant la clé de type espace, déterminant ainsi la position de départ de la clé de type espace dans la chaîne et la longueur de la clé de type espace.

②. La valeur du code ASCII de la clé de type espace : ascii(substr(xm,n,m)); n est la position de départ de la clé de type espace ;

③.SELECT replace(xm, chr (valeur du code ASCII obtenue à l'étape ②)) from table_name où ;

Problème résolu. Mais j'ai trouvé que la valeur du code ASCII obtenue à l'étape 2 ci-dessus est 41377. Cela devrait être la valeur du code ASCII d'un caractère chinois, et cela ressemble à un espace. Je me suis donc demandé s'il s'agissait de la touche espace et de la touche TAB en chinois. mode? Après l'avoir essayé, j'ai découvert que ce n'était pas le cas. Je me demande aussi, est-ce la différence entre pleine largeur et demi-largeur ? Parce que nous saisissons généralement les caractères à mi-chasse. J'ai suivi la première étape "1. Supprimez d'abord les espaces avant de comparer..." et j'ai essayé de saisir les espaces en pleine largeur et de rechercher. Le résultat a été une surprise. Il s'est avéré que tous les espaces n'étaient pas supprimés. étaient les espaces saisis en pleine largeur. La connexion parallèle a confirmé que l'espace saisi en mode pleine largeur avait une valeur de code ASCII de 41377.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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 réparer l'erreur de nuage de vapeur? Essayez ces méthodes Comment réparer l'erreur de nuage de vapeur? Essayez ces méthodes Apr 04, 2025 am 01:51 AM

L'erreur de nuage de vapeur peut être causée par de nombreuses raisons. Pour jouer à un jeu en douceur, vous devez prendre certaines mesures pour supprimer cette erreur avant de lancer le jeu. Le logiciel PHP.CN présente certaines façons ainsi que des informations plus utiles dans cet article.

Metadata Windows et problèmes de services Internet: comment le résoudre? Metadata Windows et problèmes de services Internet: comment le résoudre? Apr 02, 2025 pm 03:57 PM

Vous pouvez voir que «une connexion aux métadonnées Windows et aux services Internet (WMIS) n'a pas pu être établie.» Erreur sur la visionneuse d'événements. Cet article de Php.cn présente comment supprimer le problème des métadonnées Windows et des services Internet.

Comment résoudre les problèmes de mise à jour KB5035942 - Système de crash Comment résoudre les problèmes de mise à jour KB5035942 - Système de crash Apr 02, 2025 pm 04:16 PM

KB5035942 MISE À JOUR LES PROBLÈMES - SYSTÈME D'ÉCRASSION PROBLÈME AUX UTILISATEURS. Les personnes infligées espèrent trouver un moyen de sortir du type de problèmes, comme le système de crash, l'installation ou les problèmes sonores. Ciblage de ces situations, cet article publié par Php.cn Wil

Correction - OneDrive ne télécharge pas de photos sur PC Correction - OneDrive ne télécharge pas de photos sur PC Apr 02, 2025 pm 04:04 PM

OneDrive est un service de stockage cloud en ligne de Microsoft. Parfois, vous pourriez trouver qu'OneDrive ne parvient pas à télécharger des photos sur le cloud. Si vous êtes sur le même bateau, continuez à lire ce post du logiciel PHP.CN pour obtenir des solutions efficaces maintenant!

Supprimez les logiciels malveillants PC App Store - un guide complet pour vous! Supprimez les logiciels malveillants PC App Store - un guide complet pour vous! Apr 04, 2025 am 01:41 AM

Si vous avez un programme appelé PC App Store sur votre ordinateur et que vous ne l'installez pas délibérément, votre PC peut être infecté par le malware. Cet article de Php.cn présente comment supprimer les logiciels malveillants PC App Store.

Comment utiliser l'outil Chris Titus pour créer un ISO WIN11 / 10 débloated Comment utiliser l'outil Chris Titus pour créer un ISO WIN11 / 10 débloated Apr 01, 2025 am 03:15 AM

Chris Titus Tech a un outil appelé Windows Utility qui peut vous aider à créer facilement une ISO Windows 11/10 débloated pour installer un système propre. Php.cn offre un guide complet sur la façon de faire cette chose à l'aide de l'outil Chris Titus.

Fix: Brothers: A Tale of Two Sons Remake Not Lancement / Loading Fix: Brothers: A Tale of Two Sons Remake Not Lancement / Loading Apr 02, 2025 am 02:40 AM

Est-ce que Brothers: A Tale of Two Sons Remake ne se lance pas? Rencontrez Brothers: A Tale of Two Sons Remake Black Screen? Ici, ce post sur php.cn vous propose des solutions testées pour vous aider à résoudre ce problème.

MSConfig continue de revenir au démarrage sélectif? 2 solutions ici MSConfig continue de revenir au démarrage sélectif? 2 solutions ici Mar 28, 2025 pm 12:06 PM

Êtes-vous interrogé sur un problème que MSConfig continue de revenir au démarrage sélectif sur vos fenêtres? Comment passer au démarrage normal si vous en avez besoin? Essayez les méthodes expliquées dans ce post php.cn pour en trouver une qui fonctionne pour vous.

See all articles