zoukankan      html  css  js  c++  java
  • class04_创建表02

    创建表02

    设置注释

    如何为表和字段设置注释

    使用SQL语句设置字段默认值:关键字COMMENT

    CREATE TABLE teacher

    (

          teacher_id varchar(20)     COMMENT ‘老师编号’,

          teacher_name varchar(50)            COMMENT ‘老师姓名’,

          gender      varchar(10)           COMMENT ‘性别’

    ) COMMENT ‘老师’;

    假如对一张已经存在的表添加注释,可以使用ALTER TABLE关键字:

    alter table teacher comment ’老师’ ;

    添加或修改表中字段的注释

    设置默认值

    如何为表和字段设置默认值

    为什么要设置默认值?

    例如在博客网站上注册一个新用户时,除了用户名、密码、手机号外,还有一些非必填信息,比如性别、QQ号、职业等。这些信息如果没有填写,那向数据库插入时,就可以使用NULL值替代。

    如果性别、QQ号、职业等,这些字段被设置为NOT NULL,不可以插入NULL值,怎么办?

    设置默认值:使用关键字:DEFAULT

    CREATE TABLE teacher

    (

          teacher_id varchar(20)     ,

          teacher_name varchar(50)            default ‘‘, 默认设置为空

          gender      varchar(10)           

    );

    设置默认值注意:

    1. 表中所有的字段都可以设置默认值;
    2. 默认值的数据类型必须与字段保持一致;(不一致时,数据库虽然有也会默认做隐式类型转换,但不推荐这样做。一是因为不规范,另一方面是这样做可能会导致其它未知错误)
    3. 除主键字段外,建议其他所有字段都设置默认值;

    常用默认值:

    数据类型分类

    常用默认值

    字符型

    空字符串 ‘ ’

    数值型

    0、1

    日期和时间型

    ‘1900-01-01’

    ‘0001-01-01’

    ‘9999-12-31’

    ’00:00:00’

    CURRENT_DATE//当前时间

    根据字段的业务含义来赋默认值

    设置主键

    如何为表设置主键

    主键:唯一标识表中每一行的某一列或多列。使用关键字:PRIMARY KEY

    CREATE TABLE teacher

    (

          teacher_id varchar(20)     ,

          teacher_name varchar(50)            default ‘‘, 默认设置为空

          gender      varchar(10)           ,

          primary key(teacher_id)

    );

    主键的特点:

    1. 一个表只能有一个主键
    2. 一个表中的所有行,主键字段的值不允许重复;主键的作用是保证数据的唯一性和完整性
    3. 主键字段可以是多个,甚至是表中所有字段一起做主键;多个字段一起做主键时,我们称为联合主键或重复主键;不过一般来说不会超过5个,否则会影响操作性能
    4. 主键字段不允许为NULL;主键不应包含动态变化的数据;
    5. 主键字段不允许更新????【尽力避免】

    永远也不要更新主键的值

    特殊的NULL

    NULL值以及使用时的注意点

    在创建表时,对于表中的每个字段,可以指定字段是否必须包含值。对于可以不包含值的字段,可以向字段中插入NULL值。

    CREATE TABLE teacher

    (

          teacher_id varchar(20)     NOT NULL,

          teacher_name varchar(50)            NOT NULL,

          gender      varchar(10)           NULL, //可以为空

          primary key(teacher_id)

    );

    每个字段,要么是NOT NULL,要么是可以为NULL。创建表时,可以不指定,默认情况下是可以为NULL,也就是可以不包含值。

    NULL值表示一种虚空的状态,“不知道”“不确定”的状态,不是0!!!

    如何判断某个字段的值是否为NULL?用关键字:is

    gender is null

    gender is not null

    NULL值使用的忠告:

    1. 允许NULL值的字段,不能作为主键字段
    2. 尽量避免将字段设置为可以是NULL,事实上,应该定下规范,多有字段都必须设置为NOT NULL;
  • 相关阅读:
    入职事业单位一年,真真的发现与私企大不同
    就算收入腰斩,我也决定离开私企,去吃公家饭了
    写了8年的代码,做过的项目都下线了,程序员的意义在哪里!
    程序员又双叕和产品打起来了,说说与产品经理的那些事。
    创业公司的技术总监,去上市公司面试,结果凉了。
    看了程序员的未来在哪里,有感
    有个程序猿要去当CEO了:(一)事情始末
    企业微信/政务微信 previewFile方法在有iframe情况下且iOS点击无效解决方案
    Mark: 实现个toy版的脚手架(RPC)
    搞技术的思维
  • 原文地址:https://www.cnblogs.com/77-is-here/p/12741932.html
Copyright © 2011-2022 走看看