1

ServiceStack ORMLite クラスから PostgreSQL テーブルを作成します

[Alias("generaljournalline")]
    public class GeneralJournalLine
    {
        [Required]
        [Alias("debitamount")]
        [Default(typeof(decimal), "0")]
        public decimal DebitAmount { get; set; }

        [Required]
        [Alias("creditamount")]
        [Default(typeof(decimal), "0")]
        public decimal CreditAmount { get; set; }
}

Postgres 列 debitamount、creditamount を数値 (38,6) から数値 (38,20) に変更する方法。

ありがとうございます。

4

1 に答える 1

2

別の方法が見つからない場合、PostgreSQL で行う方法は非常に簡単です。

 ALTER TABLE generaljournalline ALTER COLUMN debitamount TYPE numeric;

これにより、長さの制約が完全になくなります。

ところで、会計ソフトウェアでは、通常、金額を 1 つの列 (- は借方、+ は貸方) に格納し、抽出時にこれらを分離する方がはるかに簡単です。最初にテーブルを設計し、次にビューを設計し、ORM を使用してビューを操作しない限り、ORM でこれを実行できるかどうかはわかりません。主な利点は、誰かが負の量を格納した場合に何が起こるかを処理するために CHECK 制約を使用する必要がないことです。結局のところ、誰かが -100 を借方として、-100 を対応する貸方として保存するとしたら、それは何を意味するのでしょうか?

于 2013-11-19T03:01:11.943 に答える