だから、これはかなり簡単なように思えますし、私は以前にこれをやったことがあると断言しますが、何らかの理由でうまくいきません.
私はMAMP約200列のテーブルを使用しており、NULLまたは空のデータが挿入された場合、約20列をデフォルトで0に設定したいと考えています。
これは、テーブルがどのように見えるか、およびデフォルトで 0 にしたい列に対して行ったことの小さな例です。
CREATE TABLE `listings` (
`ListingID` int(11) NOT NULL,
`BathsFull` int(6) NOT NULL DEFAULT '0',
PRIMARY KEY (`ListingID`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
BathsFull問題に設定したことに注意してください。NOT NULL DEFAULT '0'空のデータが渡されると、SQLエラーが発生しますSQLSTATE[23000]: Integrity constraint violation: 1048 Column 'BathsFull' cannot be null。
BathsFull acceptsNULL andDEFAULT '0'も試してみましたが、空のデータが渡されると、NULL代わりにテーブルが表示され0ます。
ここで何か不足していますか?ある種のトリガーを書く必要がありますか? 必要がなければ、DB に入れる前にスクリプト内のデータをスクラブしたくありません。