それは私だけかもしれませんが...ほとんどのSQL開発者はキャストと変換を非常に基本的なものと見なしているという事実にもかかわらず、それは本当かもしれませんが、CASTとCONVERTに関するMicrosoftのドキュメントページは最も恐ろしいものの1つです、直感的にレイアウトされていない、今まで見たものを理解するのが難しい。彼らのドキュメントの多くは素晴らしいです。ページ全体をキャストと変換の両方の組み合わせに常にブレンドしようとするように、各文を前後にジャンプします...それらを個別に処理するのではなく. そして、target_type を最初の引数として指定するのは誰ですか? 式を最初の引数として配置すると、より直感的になり、多数のプログラミング言語の構文の他の 99% に従います。うーん
MSは、私が3つのデータ型にしか変換できないと言います:(実際には、これがCASTとCONVERTの両方に当てはまるかどうかはよくわかりません。それは明らかに両方に等しく適用されます-私がはるかに頻繁に使用するCASTには当てはまらないという事実をすでに知っていますが)。
「対象のデータ型です。これには、xml、bigint、および sql_variant が含まれます」
しばらくの間、他の多くのデータ型 (date、varchar) と同じように CAST を実行するという事実は脇に置いておいて、
私の当面の質問は、これらのデータ型にしか変換できない場合、なぜこれが機能するのですか?
select CONVERT(varchar(200), cast(50 as smallint))
INSERT
最後に、 を取得して列 smallint
に入れるan を実行したいと思います。varchar(200)
私がやろうとしているのは失敗を避けることだけなので、に変換したりキャストしたりする必要はないかもしれませんがvarchar
、
CONVERT
ドキュメントに関する私の明らかな誤解について答えてください
また
- 安全に変換して挿入する方法
varchar
大歓迎です。過度に不愉快でない限り、MS のすべての批評で襟の下で熱くなる MS ファンが常にいるので.. :|