awaawaさん、こんばんは
なるほどね。Oracleはエラーメッセージとかも
最後に改行が変にくっ付いてたりとややこしい。
トリムするのは簡単だし、DBFluteでデフォルト制約の値は
ドキュメント上での利用しかないので、特に問題ないでしょう。
確認したいのは、実際にデフォルト値を使って
データ登録した場合には、カラムの値としては
改行やらスペースやらってのは混入されないのかな?
(カラムサイズを 2 以上にした場合とかでも)
つまり、メタデータ上だけの話なのか、実際の値もそうなのか?
あと、TEST4のダブルクォーテーションってすごいね。
どこにもダブルクォーテーションは存在しないのに、
"0" って感じでダブルクォーテーションで囲われるの?
改行も、って言ってるけど、一体どんな感じになるのかな?
改行やスペースのみのトリムは容易に対応してもいいかなだけど、
ダブルクォーテーションはどうしようかなというか、
どういう風に取り除くのがいいのかなって悩むところで。
(Oracleのデフォルト値の両端のDQを問答無用で外していいのか)
2011/5/19 awaawa <p1us3i...@gmail.com>:
> --
> このメールは Google グループのグループ「DBFluteユーザの集い」の登録者に送られています。
> このグループに投稿するには、dbf...@googlegroups.com にメールを送信してください。
> このグループから退会するには、dbflute+u...@googlegroups.com にメールを送信してください。
> 詳細については、http://groups.google.com/group/dbflute?hl=ja からこのグループにアクセスしてください。
>
>
awaawaです。
もろもろ確認しました。
SQL、およびSQL結果を添付しましたのでご確認をお願いします。
やはり、DDL上の「,」か「NOT NULL」か「)」までをDATA_DEFAULTに入れているようです。
insertについては問題ありませんでした。
DATA_DEFAULTにスペースや改行が混入しているカラムであっても
DDLで指定したデフォルト値のみが入ることを確認しました。
また、自分が勘違いしていたところがひとつありました。
ダブルクォーテーション混入するパターンですが、
実際は、改行が混入されているため、csv出力でエスケープされているだけでした。
つまり、ダブルクォーテーションは混入されません。
ご確認よろしくお願いします。
11/05/20 awaawa <p1us3i...@gmail.com>:
awaawaさん、なるほどありがとう。
なんともだねー。
実はMySQLのBIT型のデフォルト制約でも
似たような変な現象がありました。
もうDBFluteではデフォルト値をトリムしちゃいましょう。
空白のみ、両端に空白があるデフォルト値とかの場合に
正確なものになりませんが、そんなデフォルト値やること
ほぼないでしょうということと、どのみちJavaDocコメントや
SchemaHTML上の話なので(処理として使わないので)。
ちょっとやっておきますね。
2011/5/21 awaawa <p1us3i...@gmail.com>:
jfluteさん
ありがとうございます。
というか、oracleは別(内部的)にデフォルト値持っているんですかね。。。
対応よろしくお願いします。
11/05/21 kubo <dbf...@gmail.com>:
こちら、別件で公開しているSNAPSHOTで
既に反映されています。
(デフォルト値ってOracleに限らず怖いねぇ...)
2011/5/21 awaawa <p1us3i...@gmail.com>:
> sqlコメントが入るパターンは修正対象外の認識でいいでしょうか。
> 現状DDLにsqlコメントが入るケースはないため、問題はありません。
> あくまで調査のために考えたパターンなので。
これは修正対象外としましょう。キリがないしレアケースなので。
万が一、あってもドキュメント上だけの話だし。
2011/5/22 awaawa <p1us3i...@gmail.com>: