2012-02-06 88 views
1

我製作了一個帶兩個字段的用戶表:用戶名和密碼。我有密碼設置爲非空。MySQL工作臺

問題是,當我輸入的數據,不包括密碼只是我能值插入密碼字段的用戶名。

我的目標是不讓任何條目成不具有用戶名和密碼的數據庫。我認爲非null會強制執行,但似乎只是插入空字符串。有什麼建議麼?

回答

1

你應該張貼您都充分表的定義以及實際插入一條記錄的代碼。

然而,很可能您可能已指定爲空字符串表中的默認值。或者你在insert語句中傳遞一個空字符串,而不是null。

如果是後者,你應該知道,空是不一樣的一個空字符串。

另一個想法是簡單地添加一個插入觸發器,您可以在其中測試密碼值以查看它是否符合要求。如果不是,取消插入。我通常會建議您使用檢查限制,但顯然MySql doesn'tactuallyhonorthose

0

在MyISAM中,MySQL的標準數據庫表類型沒有被強制執行。所以不,你必須在應用程序中檢查它,或者使用另一個允許你執行驗證的表類型/其他數據庫。