Heim Datenbank MySQL-Tutorial 对Oracle Raw类型的详细解剖

对Oracle Raw类型的详细解剖

Jun 07, 2016 pm 03:51 PM
create oracle raw sql 类型 详细

SQL create table datatype_test_raw(paddr raw(8)); Table created SQL insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw type test!')); insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw

SQL> create table datatype_test_raw(paddr raw(8));

Table created

SQL> insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw type test!'));

insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw type test!'))

ORA-01401: inserted value too large for column

SQL> alter table datatype_test_raw modify paddr raw(20);

Table altered

SQL> insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw type test!'));

insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw type test!'))

ORA-01401: inserted value too large for column

SQL> insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('This is a raw test!'));

1 row inserted

SQL> commit;

Commit complete

SQL> select * from datatype_test_raw;

PADDR
----------------------------------------
54686973206973206120726177207465737421

SQL> select utl_raw.cast_to_varchar2(paddr) from datatype_test_raw;

UTL_RAW.CAST_TO_VARCHAR2(PADDR
--------------------------------------------------------------------------------
This is a raw test!

SQL> insert into datatype_test_raw(paddr) values(utl_raw.cast_to_raw('中文测试'));

1 row inserted

SQL> commit;

Commit complete

SQL> select utl_raw.cast_to_varchar2(paddr) from datatype_test_raw;

UTL_RAW.CAST_TO_VARCHAR2(PADDR
--------------------------------------------------------------------------------
This is a raw test!
中文测试

SQL> select paddr, utl_raw.cast_to_varchar2(paddr) from datatype_test_raw;

PADDR UTL_RAW.CAST_TO_VARCHAR2(PADDR
---------------------------------------- --------------------------------------------------------------------------------
54686973206973206120726177207465737421 This is a raw test!
D6D0CEC4B2E2CAD4 中文测试

这里用到了两个函数:
utl_raw.cast_to_raw([varchar2]);--将varchar2转换为raw类型
utl_raw.cast_to_varchar2([raw]);--将raw转换为varchar2类型
这里varchar2的字符集一般是GB2312。

另外:
utl_raw包的几个其他的函数用法:
utl_raw.cast_from_number([number]);
utl_raw.cast_to_number([number]);
位操作:
utl_raw.bit_or();
utl_raw.bit_and();
utl_raw.bit_xor();

另外还有转换函数:
hextoraw(); --将对应16进制数转换为raw

当使用HEXTORAW时,会把字符串中数据当作16进制数。而使用UTL_RAW.CAST_TO_RAW时,直接把字符串中每个字符的ASCII码存放到RAW类型的字段中

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße Artikel -Tags

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Funktion zur Berechnung der Anzahl der Tage zwischen zwei Daten in Oracle Funktion zur Berechnung der Anzahl der Tage zwischen zwei Daten in Oracle May 08, 2024 pm 07:45 PM

Funktion zur Berechnung der Anzahl der Tage zwischen zwei Daten in Oracle

Wie lange werden Oracle-Datenbankprotokolle aufbewahrt? Wie lange werden Oracle-Datenbankprotokolle aufbewahrt? May 10, 2024 am 03:27 AM

Wie lange werden Oracle-Datenbankprotokolle aufbewahrt?

Die Reihenfolge der Schritte zum Starten der Oracle-Datenbank ist Die Reihenfolge der Schritte zum Starten der Oracle-Datenbank ist May 10, 2024 am 01:48 AM

Die Reihenfolge der Schritte zum Starten der Oracle-Datenbank ist

So verwenden Sie das Intervall in Oracle So verwenden Sie das Intervall in Oracle May 08, 2024 pm 07:54 PM

So verwenden Sie das Intervall in Oracle

Wie viel Speicher benötigt Oracle? Wie viel Speicher benötigt Oracle? May 10, 2024 am 04:12 AM

Wie viel Speicher benötigt Oracle?

Anforderungen an die Hardwarekonfiguration des Oracle-Datenbankservers Anforderungen an die Hardwarekonfiguration des Oracle-Datenbankservers May 10, 2024 am 04:00 AM

Anforderungen an die Hardwarekonfiguration des Oracle-Datenbankservers

So sehen Sie die Häufigkeit des Vorkommens eines bestimmten Zeichens in Oracle So sehen Sie die Häufigkeit des Vorkommens eines bestimmten Zeichens in Oracle May 09, 2024 pm 09:33 PM

So sehen Sie die Häufigkeit des Vorkommens eines bestimmten Zeichens in Oracle

So ersetzen Sie eine Zeichenfolge in Oracle So ersetzen Sie eine Zeichenfolge in Oracle May 08, 2024 pm 07:24 PM

So ersetzen Sie eine Zeichenfolge in Oracle

See all articles