- - PR -
SQLのシングルコーテーションについて
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2003-06-30 17:50
いつもお世話になっております。
SQLでの「’」を文字として認識させたいのですがどうしたらいいのでしょうか? よろしくお願いいたします | ||||
|
投稿日時: 2003-06-30 18:25
こんにちわ。
具体的な状況が書かれてないので的をはずすかもしれませんが、 エスケープ文字(¥)をつければよいんではないでしょうか? # 投稿時、開発環境/使用言語/状況くらいは記載した方がより的確なアドバイスを貰えると思います。 [ メッセージ編集済み 編集者: はぐれコ〜ギ〜 編集日時 2003-07-01 11:33 ] | ||||
|
投稿日時: 2003-07-01 23:35
こんにちは。
スレッド見ました。 質問の内容は.Netには関係ないと思いますが... SQL文ですよね? シングルコーテーションに関しては、プログラムでINSERT文を行っているならば、保存する前に「禁則文字」としてエラーで回避するのがいいと思います。 ただ、どうしても保存させるのならば、Oracleならば、プロシージャで処理を行えば問題ありません。 あと力技になりますが、【''''】←こんな感じで複数のシングルコーテーションを入力すれば認識するはずです。(シングルコーテーションの数は忘れましたが...) 上記の方法はOracleです。 それ以外のデータベースの場合は分かりません。 | ||||
|
投稿日時: 2003-07-02 08:07
> あと力技になりますが、【''''】←こんな感じで複数のシングルコーテーションを
> 入力すれば認識するはずです。(シングルコーテーションの数は忘れましたが...) ふたつシングルクォーテーションを重ねればひとつと見てくれるってことです。 数忘れたとかいうほどのものではないですよ。 VB使ったことがある人なら自然じゃないでしょうかね? 文字列中のダブルクォーテーションのエスケープと同じ理屈です。 | ||||
|
投稿日時: 2003-07-02 10:14
こんにちは。
スレッド見ました。 昨日はOracleの環境がなかったので実験できませんでした。
Oracle9iになりますが、ふたつシングルクォーテーションを重ねる方法を試してみました。 【SELECT '' FROM dual】だと、何もでませんが... 【SELECT '''' FROM deal】だと、シングルコーテーションが一つ表示されます。 | ||||
|
投稿日時: 2003-07-02 10:33
>【SELECT '' FROM dual】だと、何もでませんが... これってただ空文字列を表示しているだけなのでは? >【SELECT '''' FROM deal】だと、シングルコーテーションが一つ表示されます。 は、文字列を表す記号として両端の「'」が使われているので、その中の「''」が 文字として表示されていることになります。 たとえば、別の文字と混ぜて使った場合よく分かると思います。 「ab'cd」と表示したい場合 SELECT 'ab''cd' FROM dual とか。 |
1