MySQL学习(二)

DELETE和UPDATE

  • DELETE不能删除单一列中的值或表中某一列的所有值;可用于删除一行或多行
  • UPPER()函数可以把表中的文本列改为大写;LOWER()则可改为小写
  • SHOW CREATE TABLE table;可以查看表的创建语句
  • SHOW INDEX FROM table;可以查看任何编了索引的列和索引类型

规范化

  • 原子性数据规则
    1. 具有原子性数据的列中不会有多个类型相同的值
    2. 具有原子性数据的表中不会有多个存储同类数据的列
  • 第一范式(1NF)强调的是列的原子性,即列不能够再分成其他几列。 (第一范式:1.数据列只包含具有原子性的值2.没有重复的数据组)
  • 主键

    1. 不可为NULL
    2. 插入新记录时必须指定主键值
    3. 必须简洁
    4. 不可被修改
  • 建一个有主键的表
    CREATE TABLE test_primary_key
    ( id INT NOT NULL AUTO_INCREMENT,
    name VARCHAR(30) default NULL,
    PRIMARY KEY (id)
    );

  • 为现有的表添加主键
    ALTER TABLE add_primary_key
    ADD COLUMN id INT NOT NULL AUTO_INCREMENT FIRST,
    ADD PRIMARY KEY (id);

    FIRST把新列放在最前面

ALTER

  • 表的改名 ALTER TABLE table RENAME TO new_name;
  • 修改列名和属性ALTER TABLE table CHANGE COLUMN column new_column_name INT ;
  • 修改列属性ALTER TABLE table MODIFY COLUMN column VARCHAR(100);
  • 删除某列ALTER TABLE table DROP COLUMN column
  • 移除主键设置ALTER TABLE table DROP PRIMARY KEY;
  • 每个表中只有一列可以加上AUTO_INCREMENT,该列必须为整数类型而且不能包含NULL
  • 使用FIRST,SECOND,LAST,BEFORE column,AFTER column可以调整列的顺序
  • 字符串函数
    1. LEFT(column,n)和RIGHT(column,n)从列的左侧(右侧)开始选取n个字符
    2. SUBSTRING(your_string,start_position,length)攫取一部分your_string字符串,起始位置为start_position,长度为length
    3. SUBSTRING_INDEX(your_string,item,n)取第n个item前的所有内容
    4. REVERSE(your_string)反转字符串
    5. LENGTH(your_string)返回字符串长度
    6. LTRIM(your_string)和RTRIM(your_string)分别去除字符左侧(右侧)的多余空格
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值