OracleString
構造は、データベースに格納されるか、またはデータベースから取得される文字の可変長ストリームを表します。
クラスの継承
System.Object
System.ValueType
Oracle.DataAccess.Types.OracleString
宣言
// ADO.NET 2.0: C# public struct OracleString : IComparable, INullable, IXmlSerializable
// ADO.NET 1.x: C#
public struct OracleString : IComparable, INullable
スレッド安全性
パブリック静的メソッドはスレッドセーフですが、インスタンス・メソッドではスレッド安全性は保証されません。
例
// C# using System; using Oracle.DataAccess.Types; class OracleStringSample { static void Main() { // Initialize OracleString structs OracleString string1 = new OracleString("AAA"); // Display the string "AAA" Console.WriteLine("{0} has length of {1}", string1, string1.Length); // Contatenate characters to string1 until the length is 5 while (string1.Length < 5) string1 = OracleString.Concat(string1,"a"); // Display the string of "AAAaa" Console.WriteLine("{0} has length of {1}", string1, string1.Length); } }
要件
ネームスペース: Oracle.DataAccess.Types
アセンブリ: Oracle.DataAccess.dll
Microsoft .NET Frameworkバージョン1.0以降
次の表に、OracleString
メンバーを示します。
OracleStringコンストラクタ
OracleString
コンストラクタを、表12-74にリストします。
OracleString静的フィールド
OracleString
静的フィールドを、表12-75にリストします。
OracleString静的メソッド
OracleString
静的メソッドを、表12-76にリストします。
表12-76 OracleString静的メソッド
メソッド | 説明 |
---|---|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
OracleString静的演算子
OracleString
静的メソッドを、表12-77にリストします。
表12-77 OracleString静的演算子
演算子 | 説明 |
---|---|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
OracleString型変換
OracleString
型変換を、表12-78にリストします。
表12-78 OracleString型変換
演算子 | 説明 |
---|---|
指定された |
|
指定された |
OracleStringプロパティ
OracleString
プロパティを、表12-79にリストします。
表12-79 OracleStringプロパティ
プロパティ | 説明 |
---|---|
文字列比較を実行するときに、大/小文字の区別を無視する必要があるかどうかを示します |
|
現行インスタンスにNULL値があるかどうかを示します |
|
索引を使用して、 |
|
|
OracleStringメソッド
OracleString
メソッドを、表12-80にリストします。
表12-80 OracleStringメソッド
メソッド | 説明 |
---|---|
現行の |
|
現行の |
|
オブジェクトが現行の |
|
|
|
クライアント・キャラクタ・セットの形式で、 |
|
GetType |
|
Unicode形式で、 |
|
現行の |
OracleString
コンストラクタは、OracleString
構造の新しいインスタンスを作成します。
オーバーロード・リスト:
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、文字列を使用して値を設定します。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、文字列を使用して値を設定し、比較のときに大/小文字の区別が無視されるかどうかを指定します。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用して値を設定し、指定されたバイト配列がUnicodeでエンコードされているかどうかを指定します。
OracleString(byte [ ], bool, bool)
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、指定されたバイト配列がUnicodeでエンコードされているかどうかと比較のときに大/小文字の区別が無視されるかどうかを指定します。
OracleString(byte [ ], int, int, bool)
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、バイト配列の開始索引とバイト配列からコピーされるバイト数、および指定されたバイト配列がUnicodeでエンコードされているかどうかを指定します。
OracleString(byte [ ], int, int, bool, bool)
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、バイト配列の開始索引とバイト配列からコピーされるバイト数、および指定されたバイト配列がUnicodeでエンコードされているかどうかと比較のときに大/小文字の区別が無視されるかどうかを指定します。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、文字列を使用して値を設定します。
宣言
// C#
public OracleString(string data);
パラメータ
data
文字列値
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、文字列を使用して値を設定し、比較のときに大/小文字の区別が無視されるかどうかを指定します。
宣言
// C# public OracleString(string data, bool isCaseIgnored);
パラメータ
data
文字列値
isCaseIgnored
比較のときに大/小文字の区別が無視されるかどうかを指定します。大/小文字の区別が無視される場合はtrue
、それ以外の場合はfalse
を指定します。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用して値を設定し、指定されたバイト配列がUnicodeでエンコードされているかどうかを指定します。
宣言
// C# public OracleString(byte[] data, bool fUnicode);
パラメータ
data
新しいOracleString
のバイト配列データ
fUnicode
指定されたdata
がUnicodeでエンコードされているかどうかを指定します。Unicodeでエンコードされている場合はtrue
、それ以外の場合はfalse
を指定します。
例外
ArgumentNullException
: data
パラメータがNULLです。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、指定されたバイト配列がUnicodeでエンコードされているかどうかと比較のときに大/小文字の区別が無視されるかどうかを指定します。
宣言
// C# public OracleString(byte[] data, bool fUnicode, bool isCaseIgnored);
パラメータ
data
新しいOracleString
のバイト配列データ
fUnicode
指定されたdata
がUnicodeでエンコードされているかどうかを指定します。Unicodeでエンコードされている場合はtrue
、それ以外の場合はfalse
を指定します。
isCaseIgnored
比較のときに大/小文字の区別が無視されるかどうかを指定します。大/小文字の区別が無視される場合はtrue
、それ以外の場合はfalse
を指定します。
例外
ArgumentNullException
: data
パラメータがNULLです。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、バイト配列の開始索引とバイト配列からコピーされるバイト数、および指定されたバイト配列がUnicodeでエンコードされているかどうかを指定します。
宣言
// C# public OracleString(byte[] data, int index, int count, bool fUnicode);
パラメータ
data
新しいOracleString
のバイト配列データ
index
data
からコピーされる開始索引
count
コピーされるバイト数
fUnicode
指定されたdata
がUnicodeでエンコードされているかどうかを指定します。Unicodeでエンコードされている場合はtrue
、それ以外の場合はfalse
を指定します。
例外
ArgumentNullException
: data
パラメータがNULLです。
ArgumentOutOfRangeException
: count
パラメータがゼロ未満です。
IndexOutOfRangeException
: index
パラメータがdata
の長さ以上か、ゼロ未満です。
このコンストラクタは、OracleString
構造の新しいインスタンスを作成し、バイト配列を使用してその値を設定し、バイト配列の開始索引とバイト配列からコピーされるバイト数、および指定されたバイト配列がUnicodeでエンコードされているかどうかと比較のときに大/小文字の区別が無視されるかどうかを指定します。
宣言
// C# public OracleString(byte[] data, int index, int count, bool fUnicode, bool isCaseIgnored);
パラメータ
data
新しいOracleString
のバイト配列データ
index
data
からコピーされる開始索引
count
コピーされるバイト数
fUnicode
指定されたdata
がUnicodeでエンコードされているかどうかを指定します。Unicodeでエンコードされている場合はtrue
、それ以外の場合はfalse
を指定します。
isCaseIgnored
比較のときに大/小文字の区別が無視されるかどうかを指定します。大/小文字の区別が無視される場合はtrue
、それ以外の場合はfalse
を指定します。
例外
ArgumentNullException
: data
パラメータがNULLです。
ArgumentOutOfRangeException
: count
パラメータがゼロ未満です。
IndexOutOfRangeException
: index
パラメータがdata
の長さ以上か、ゼロ未満です。
OracleString
静的フィールドを、表12-81にリストします。
この静的フィールドは、OracleString
構造のインスタンスに割り当てられるNULL値を表します。
宣言
// C# public static readonly OracleString Null;
OracleString
静的メソッドを、表12-82にリストします。
表12-82 OracleString静的メソッド
メソッド | 説明 |
---|---|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
この静的メソッドは、2つのOracleString
インスタンスを連結して、その結果を表す新しいOracleString
インスタンスを戻します。
宣言
// C# public static OracleString Concat(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
OracleString
備考
引数のいずれかにNULL値がある場合、戻されたOracleString
構造にはNULL値があります。
Object
をオーバーロードします。
この静的メソッドは、比較される2つのOracleString
が等しいかどうかを決定します。
宣言
// C# public static bool Equals(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
比較される2つのOracleString
が等しい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的メソッドは、2つのOracleString
の最初の値が、2番目の値より大きいかどうかを決定します。
宣言
// C# public static bool GreaterThan(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値より大きい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的メソッドでは、2つのOracleString
値の最初の値が、2番目の値以上であるかどうかを決定します。
宣言
// C# public static bool GreaterThanOrEqual(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値以上の場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的メソッドでは、2つのOracleString
値の最初の値が、2番目の値より小さいかどうかを決定します。
宣言
// C# public static bool LessThan(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
最初の値が2番目の値より小さい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的メソッドでは、2つのOracleString
値の最初の値が、2番目の値以下かどうかを決定します。
宣言
// C# public static bool LessThanOrEqual(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
最初の値が2番目の値以下の場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的メソッドは、2つのOracleString
値が等しくないかどうかを決定します。
宣言
// C# public static bool NotEquals(OracleString str1, OracleString str2);
パラメータ
str1
最初のOracleString
str2
2番目のOracleString
戻り値
2つのOracleString
インスタンスが等しくない場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
OracleString
静的演算子を、表12-83にリストします。
表12-83 OracleString静的演算子
演算子 | 説明 |
---|---|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
|
2つの |
この静的演算子は、2つのOracleString
値を連結します。
宣言
// C# public static OracleString operator + (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
OracleString
備考
引数のいずれかにNULL値がある場合、戻されたOracleString
構造にはNULL値があります。
この静的演算子は、2つのOracleString
値が等しいかどうかを決定します。
宣言
// C# public static bool operator == (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
値が等しい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的演算子は、2つのOracleString
の最初の値が、2番目の値より大きいかどうかを決定します。
宣言
// C# public static bool operator > (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値より大きい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的演算子は、2つのOracleString
の最初の値が、2番目の値以上かどうかを決定します。
宣言
// C# public static bool operator >= (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値以上の場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的演算子は、2つのOracleString
値が等しくないかどうかを決定します。
宣言
// C# public static bool operator != (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
値が等しくない場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的演算子は、2つのOracleString
の最初の値が、2番目の値より小さいかどうかを決定します。
宣言
// C# public static bool operator < (OracleString value1, OracleString value2);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値より小さい場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
この静的演算子は、2つのOracleString
の最初の値が、2番目の値以下かどうかを決定します。
宣言
// C# public static bool operator <= (OracleString value1, OracleString value1);
パラメータ
value1
最初のOracleString
value2
2番目のOracleString
戻り値
2つのOracleString
の最初の値が2番目の値以下の場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
OracleString
型変換を、表12-84にリストします。
表12-84 OracleString型変換
演算子 | 説明 |
---|---|
指定された |
|
指定された |
この型変換演算子は、指定されたOracleString
をstring
に変換します。
宣言
//C#
public static explicit operator string (OracleString value1);
パラメータ
value1
指定されたOracleString
戻り値
string
例外
OracleNullValueException
: OracleString
構造にNULL値があります。
この型変換演算子は、指定されたstring
をOracleString
に変換します。
宣言
// C# public static implicit operator OracleString (string value1);
パラメータ
value1
指定された文字列
戻り値
OracleString
OracleString
プロパティを、表12-85にリストします。
表12-85 OracleStringプロパティ
プロパティ | 説明 |
---|---|
文字列比較を実行するときに、大/小文字の区別を無視する必要があるかどうかを示します |
|
現行インスタンスにNULL値があるかどうかを示します |
|
索引を使用して、 |
|
|
このプロパティは、文字列比較を実行するときに、大/小文字の区別を無視する必要があるかどうかを示します。
宣言
//C# public bool IsCaseIgnored {get;set;}
プロパティ値
文字列比較で大/小文字の区別を無視する必要がある場合はtrue
、それ以外の場合はfalse
を戻します。
備考
デフォルト値はtrue
例
// C# using System; using Oracle.DataAccess.Types; class IsCaseIgnoredSample { static void Main() { OracleString string1 = new OracleString("aAaAa"); OracleString string2 = new OracleString("AaAaA"); // Ignore case for comparisons string1.IsCaseIgnored = true; string2.IsCaseIgnored = true; // Same; Prints 0 Console.WriteLine(string1.CompareTo(string2)); // Make comparisons case sensitive // Note that IsCaseIgnored must be set to false for both // OracleStrings; otherwise an exception is thrown string1.IsCaseIgnored = false; string2.IsCaseIgnored = false; // Different; Prints nonzero value Console.WriteLine(string1.CompareTo(string2)); } }
このプロパティは現行インスタンスにNULL値があるかどうかを示します。
宣言
// C# public bool IsNull {get;}
プロパティ値
現行インスタンスにNULL値が含まれる場合はtrue
、それ以外の場合はfalse
を戻します。
このプロパティは、索引を使用して、OracleString
内の特定の文字を取得します。
宣言
// C# public char Item {get;}
プロパティ値
char
値
例外
OracleNullValueException
: 現行インスタンスにはNULL値があります。
このプロパティは、OracleString
の長さを戻します。
宣言
// C# public int Length {get;}
プロパティ値
整数
例外
OracleNullValueException
: 現行インスタンスにはNULL値があります。
OracleString
メソッドを、表12-86にリストします。
表12-86 OracleStringメソッド
メソッド | 説明 |
---|---|
現行の |
|
現行の |
|
オブジェクトが現行の |
|
|
|
クライアント・キャラクタ・セットの形式で、 |
|
GetType |
|
Unicode形式で、 |
|
現行の |
このメソッドは、OracleString
インスタンスのコピーを作成します。
宣言
// C# public OracleString Clone();
戻り値
OracleString
構造
備考
複製されたオブジェクトのプロパティ値は、複製元のオブジェクトのプロパティ値と同じです。
例
// C# using System; using Oracle.DataAccess.Types; class CloneSample { static void Main() { OracleString str1 = new OracleString("aAaAa"); OracleString str2 = str1.Clone(); // The OracleStrings are same; Prints 0 Console.WriteLine(str1.CompareTo(str2)); } }
このメソッドは、現行のOracleString
インスタンスと指定されたオブジェクトを比較して、その相対値を表す整数を戻します。
宣言
// C# public int CompareTo(object obj);
パラメータ
obj
現行インスタンスと比較されるオブジェクト
戻り値
メソッドが戻す数値は次のとおりです。
ゼロ未満: 現行のOracleString
値がobj
より小さい場合
ゼロ: 現行のOracleString
値がobj
と等しい場合
ゼロ超過: 現行のOracleString
値がobj
より大きい場合
実装
IComparable
例外
ArgumentException
: obj
パラメータがOracleString
型ではありません。
備考
次のルールが、このメソッドの動作に適用されます。
比較はOracleString
間で行う必要があります。たとえば、OracleString
インスタンスとOracleBinary
インスタンスを比較することはできません。OracleString
を別の型と比較すると、ArgumentException
が表示されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
このメソッドは、指定されたオブジェクトがOracleString
のインスタンスかどうか、および現行のOracleString
インスタンスと同じ値を持っているかどうかを決定します。
宣言
// C#
public override bool Equals(object obj);
パラメータ
obj
比較されるオブジェクト
戻り値
指定されたオブジェクトがOracleString
のインスタンスで、現行のOracleString
インスタンスと同じ値を持っている場合はtrue
、それ以外の場合はfalse
を戻します。
備考
次のルールが、このメソッドの動作に適用されます。
値を持つすべてのOracleString
は、NULL値を持つOracleString
より大きくなります。
NULL値を含む2つのOracleString
は等しくなります。
Object
をオーバーライドします。
このメソッドは、OracleString
インスタンスのハッシュ・コードを戻します。
宣言
// C# public override int GetHashCode();
戻り値
ハッシュ・コードを表す数値
このメソッドは、クライアント・キャラクタ・セットの形式で、OracleString
の内容を含むバイトの配列を戻します。
宣言
// C# public byte[] GetNonUnicodeBytes();
戻り値
クライアント・キャラクタ・セット形式のOracleString
の内容を含むバイト配列
備考
現行インスタンスにNULL値がある場合は、OracleNullValueException
が表示されます。
このメソッドは、Unicode形式で、OracleString
の内容を含むバイトの配列を戻します。
宣言
// C# public byte[] GetUnicodeBytes();
戻り値
Unicode形式のOracleString
の内容を含むバイト配列
備考
現行インスタンスにNULL値がある場合は、OracleNullValueException
が表示されます。
Object
をオーバーライドします。
このメソッドは、現行のOracleString
インスタンスをstring
に変換します。
宣言
// C# public override string ToString();
戻り値
string
備考
現行のOracleString
インスタンスにNULL値がある場合、文字列にはNULLが含まれます。