2017-05-25 120 views
1

我试图把握MySQL.My数据库字段'ssl_cipher'没有默认值,为什么?

+------------------------+-----------------------------------+------+-----+-----------------------+-------+ 
| Field     | Type        | Null | Key | Default    | Extra | 
+------------------------+-----------------------------------+------+-----+-----------------------+-------+ 
| Host     | char(60)       | NO | PRI |      |  | 
| User     | char(32)       | NO | PRI |      |  | 
| Select_priv   | enum('N','Y')      | NO |  | N      |  | 
| Insert_priv   | enum('N','Y')      | NO |  | N      |  | 
| Update_priv   | enum('N','Y')      | NO |  | N      |  | 
| Delete_priv   | enum('N','Y')      | NO |  | N      |  | 
| Create_priv   | enum('N','Y')      | NO |  | N      |  | 
| Drop_priv    | enum('N','Y')      | NO |  | N      |  | 
| Reload_priv   | enum('N','Y')      | NO |  | N      |  | 
| Shutdown_priv   | enum('N','Y')      | NO |  | N      |  | 
| Process_priv   | enum('N','Y')      | NO |  | N      |  | 
| File_priv    | enum('N','Y')      | NO |  | N      |  | 
| Grant_priv    | enum('N','Y')      | NO |  | N      |  | 
| References_priv  | enum('N','Y')      | NO |  | N      |  | 
| Index_priv    | enum('N','Y')      | NO |  | N      |  | 
| Alter_priv    | enum('N','Y')      | NO |  | N      |  | 
| Show_db_priv   | enum('N','Y')      | NO |  | N      |  | 
| Super_priv    | enum('N','Y')      | NO |  | N      |  | 
| Create_tmp_table_priv | enum('N','Y')      | NO |  | N      |  | 
| Lock_tables_priv  | enum('N','Y')      | NO |  | N      |  | 
| Execute_priv   | enum('N','Y')      | NO |  | N      |  | 
| Repl_slave_priv  | enum('N','Y')      | NO |  | N      |  | 
| Repl_client_priv  | enum('N','Y')      | NO |  | N      |  | 
| Create_view_priv  | enum('N','Y')      | NO |  | N      |  | 
| Show_view_priv   | enum('N','Y')      | NO |  | N      |  | 
| Create_routine_priv | enum('N','Y')      | NO |  | N      |  | 
| Alter_routine_priv  | enum('N','Y')      | NO |  | N      |  | 
| Create_user_priv  | enum('N','Y')      | NO |  | N      |  | 
| Event_priv    | enum('N','Y')      | NO |  | N      |  | 
| Trigger_priv   | enum('N','Y')      | NO |  | N      |  | 
| Create_tablespace_priv | enum('N','Y')      | NO |  | N      |  | 
| ssl_type    | enum('','ANY','X509','SPECIFIED') | NO |  |      |  | 
| ssl_cipher    | blob        | NO |  | NULL     |  | 
| x509_issuer   | blob        | NO |  | NULL     |  | 
| x509_subject   | blob        | NO |  | NULL     |  | 
| max_questions   | int(11) unsigned     | NO |  | 0      |  | 
| max_updates   | int(11) unsigned     | NO |  | 0      |  | 
| max_connections  | int(11) unsigned     | NO |  | 0      |  | 
| max_user_connections | int(11) unsigned     | NO |  | 0      |  | 
| plugin     | char(64)       | NO |  | mysql_native_password |  | 
| authentication_string | text        | YES |  | NULL     |  | 
| password_expired  | enum('N','Y')      | NO |  | N      |  | 
| password_last_changed | timestamp       | YES |  | NULL     |  | 
| password_lifetime  | smallint(5) unsigned    | YES |  | NULL     |  | 
| account_locked   | enum('N','Y')      | NO |  | N      |  | 
+------------------------+-----------------------------------+------+-----+-----------------------+-------+ 

我正在学习从tutorialspoint.I想获得新的用户,但是,这种情况

insert into user(host, user,select_priv, insert_priv, update_priv) values ('localhost', 'guest', 'Y', 'Y', 'Y'); 
ERROR 1364 (HY000): Field 'ssl_cipher' doesn't have a default value 

为什么?我应该改变团块是否输入?或者这个问题与行政特权有关?

+0

要么将​​列设置为NOT NULL,要么为列提供默认值 – Akhil

+0

@Akhil该表是MySQL内部表。改变模式并不明智。 – duskwuff

回答

1

BLOBTEXT列不能有DEFAULT值。请致电link

相关问题