DEFAULT 默认值

每当插入一个记录时候 假设没有明确字段赋值 则自动赋予默认值;

mysql> CREATE TABLE eight(
    -> id SMALLINT UNSIGNED  AUTO_INCREMENT PRIMARY KEY,
    -> username VARCHAR(20) NOT NULL UNIQUE KEY,
    -> sex ENUM ("1","2","3") DEFAULT'3'                     DEFAULT设置默认值;
    -> );
Query OK, 0 rows affected (0.01 sec)

mysql> SHOW COLUMNS FROM eight;
+----------+----------------------+------+-----+---------+----------------+
| Field    | Type                 | Null | Key | Default | Extra          |
+----------+----------------------+------+-----+---------+----------------+
| id       | smallint(5) unsigned | NO   | PRI | NULL    | auto_increment |
| username | varchar(20)          | NO   | UNI | NULL    |                |
| sex      | enum('1','2','3')    | YES  |     | 3       |                |
+----------+----------------------+------+-----+---------+----------------+
3 rows in set (0.03 sec)

mysql> INSERT EIGHT (USERNAME)VALUES('feiyu');
Query OK, 1 row affected (0.00 sec)

mysql> SELECT * FROM eight;
+----+----------+------+
| id | username | sex  |
+----+----------+------+
|  1 | feiyu    | 3    |
+----+----------+------+
1 row in set (0.00 sec)

mysql>

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: MySQL 的默认值可以通过在列定义时使用 "DEFAULT" 关键字来设置。 例如: ``` CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name VARCHAR(255) NOT NULL, age INT DEFAULT 18 ); ``` 在上面的例子中,当没有指定 "age" 列的时,将使用默认值 18。 ### 回答2: MySQL是一款流行的关系型数据库管理系统,具有强大的功能和灵活的自定义选项。在MySQL中,default默认值设置是一项非常重要的特性,它允许我们在数据库中定义默认值,以便在插入新数据时节省时间和精力。 MySQL默认值设置可以应用于表之间的列,并且MySQL提供了多种默认值选项。以下是MySQL提供的默认值选项: 1. NULL默认值:当未提供任何时,使用NULL默认值。 2. 常量默认值:可以使用任何常量作为默认值,例如字符串、数字或日期。 3. 表达式默认值默认值可以是一个表达式,例如UNIX_TIMESTAMP()。 4. CURRENT_TIMESTAMP默认值:MySQL提供了特殊的默认值 CURRENT_TIMESTAMP,可用于在列上设置当前日期和时间的默认值。如果未提供,则自动提供当前日期和时间。 5. 自动递增默认值:可以将自动递增属性与默认值一起使用,例如创建一个自动递增的ID并将其设置为默认值。 MySQL还允许我们在创建表时设置默认值,或者在以后的时间点通过修改表定义来更改默认值。 在创建表时设置默认值的语法如下: CREATE TABLE table_name ( column1 datatype default_value, column2 datatype default_value, column3 datatype default_value, ... ); 例如: CREATE TABLE customers ( id INT AUTO_INCREMENT PRIMARY KEY, first_name VARCHAR(50) DEFAULT 'John', last_name VARCHAR(50) DEFAULT 'Smith', email VARCHAR(50) DEFAULT NULL ); 上述示例中,id是自动递增的列,first_name和last_name列包含字符串常量作为默认值,email列使用NULL作为默认值。 在已有表中更改默认值的语法如下: ALTER TABLE table_name ALTER COLUMN column_name SET DEFAULT default_value; 例如: ALTER TABLE customers ALTER COLUMN email SET DEFAULT 'info@example.com'; 上述示例将将email列的默认值更改为“info@example.com”。 总之,MySQL默认值设置是一项非常重要的特性,可简化数据输入并改进数据库性能。MySQL提供了多种默认值选项,包括NULL默认值、常量默认值、表达式默认值、CURRENT_TIMESTAMP默认值和自动递增默认值,可以在创建表时或稍后修改表定义时定义默认值。 ### 回答3: MySQL中,default关键字用于设置列的默认值。当插入新行时,如果该列被省略,则使用默认值。如果列的默认值没有定义,则使用NULL(除非该列被定义为NOT NULL)。 默认值可以是常量、表达式或函数。常量可以是数字、字符串等,表达式可以是算术表达式、逻辑表达式等,函数可以是MySQL内置函数或用户自定义函数。 在创建表时,可以使用DEFAULT关键字来为列指定默认值。例如: CREATE TABLE test ( id INT(10) PRIMARY KEY, name VARCHAR(50) DEFAULT 'Unknown', age INT(3) DEFAULT 0, created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP ); 在这个例子中,当插入一行时,如果省略name列,则使用默认值'Unknown';如果省略age列,则使用默认值0;如果省略created_at列,则使用当前时间作为默认值。 可以通过ALTER TABLE语句来修改列的默认值。例如: ALTER TABLE test ALTER COLUMN age SET DEFAULT 18; 这个语句将修改age列的默认值为18。 需要注意的是,一旦列的默认值被设置,所有新的行都将使用该默认值,除非INSERT语句明确指定了一个不同的。而且,只有在插入新行时才会使用默认值,如果使用UPDATE语句修改某行,列的默认值不会被使用。 总之,MySQL中的DEFAULT关键字用于指定列的默认值,在创建表和修改表结构时非常有用。默认值可以是常量、表达式或函数,可以通过ALTER TABLE语句进行修改。要注意默认值的使用范围和特性,以便正确地编写SQL语句。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值