首页 > 代码库 > mysql中表的练习

mysql中表的练习

1.创建一个表:

主键id 用户名 性别 体重(kg) 生日 工资 上次登陆时间 个人简介
               
--术语:建表的过程就是声明字段过程。声明数据类型。
  1. CREATE TABLE homework(
  2. id INT(10) NOT NULL PRIMARY KEY
  3. )ENGINE=INNODB DEFAULT CHARSET=utf8;
 技术分享技术分享
 
 -- 建表取名原则:
  • 表名、列名不能有空格和中文。
  •  不能以数字开头
  • 表一般都有前缀。以下划线分隔。
  •  列名要见名思议。
  •  列名带上注释。
 
2.创建一个表头并修改列
--在表中增加列:
ALTER TABLE 表名 ADD 列名 列数据类型(长度) 是否为空 DEFAULT
  1. ALTER TABLE homework ADD NAME VARCHAR(20)
技术分享
 
 --新增一列到指定的某一列后面
ALTER TABLE 表名 ADD 列名 数据类型(长度) AFTER 列名;
  1. ALTER TABLE homework ADD sex CHAR(1) AFTER NAME;
技术分享
 
 --最前面加上一列
ALTER TABLE 表名 ADD 列名  数据类型(长度) FIRST;
  1. ALTER TABLE homework ADD number INT(2) FIRST;
技术分享
 
 --修改表名
RENAME TABLE 旧表名 TO 新表名;
  1. RENAME TABLE homework TO homework1;
技术分享
 
 --删除一列
ALTER TABLE 表名 DROP 列名;
  1. ALTER TABLE homework DROP number;
技术分享
 
 --查看表的结构
DESC 表名;
  1. DESC homework;
技术分享
 
--修改列类型
ALTER TABLE 表名 MODIFY 数据类型(长度);
  1. ALTER TABLE homework MODIFY weight DECIMAL(3,2);
技术分享
 
 --修改列名
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型(长度);
  1. ALTER TABLE homework CHANGE jianjie jieshao VARCHAR(30);
技术分享
 
数值类型:
技术分享
 浮点类型:
decimal(5,2) 5是精度,2是标度。精度表示保存值的主要位数,标度表示小数点后面可以保存的位数。
技术分享
技术分享
时间类型:
技术分享
TIMESTAMP列用于INSERT或UPDATE操作时记录日期和时间。如果你不分配一个值,表中的第
一个TIMESTAMP列自动设置为最近操作的日期和时间。也可以通过分配一个NULL值,
将TIMESTAMP列设置为当前的日期和时间。
sysdate() 函数,获取数据库时间。
 
3.数据的处理
  • 新增(insert)
--向homework表中插入一条数据,只插入主键和姓名:
INSERT INTO表名(主键列名,姓名列名) VALUES(主键数据,‘姓名‘);
  1. INSERT INTO homework(id,NAME) VALUES(11,‘小明‘);
技术分享
 
--向homework表中插入一条数据,所有值都插入值:
INSERT INTO homework VALUES(每一列的数据,用逗号隔开);
  1. INSERT INTO homework VALUES(77,‘小画‘,‘女‘,55.366,19990826,12233.346,SYSDATE(),‘经理‘);
技术分享
 
 #注意:
1.主键不能重复
2.非空的列必须要插入值。
3.所有列都插入值的话,表名后面可以不带括号。
 
  • 删除(delete)
--根据名字来删除homework表中的小明:
DELETE FROM 表名 WHERE 名字列名=‘数据名‘;
  1. DELETE FROM homework WHERE NAME=‘小明‘;
技术分享
 
 --根据id来删除homework表中的小伟:
DELETE FROM 表名 WHERE id列名=‘数据名‘;
技术分享
 
#注意:id是主键,所以一个id代表一条数据。
--删除表中性别为女且都是经理的人:
DELETE FROM 表名 WHERE 性别列名=‘女‘ AND 列名=‘经理‘;
  1. DELETE FROM homework WHERE sex=‘女‘ AND jieshao=‘经理‘;
技术分享
 
 --删除表中生日为空的人:
DELETE FROM 表名 WHERE 生日列名 IS NULL;
  1. DELETE FROM homework WHERE birthday IS NULL;
技术分享
 
 --删除表中性别不为女性的人:
DELETE FROM 表名 WHERE 性别列名<>‘女‘;
  1. DELETE FROM homework WHERE sex<>‘女‘;
技术分享
 
 --删除表中体重超过65的人:
DELETE FROM 表名 WHERE 体重列名>65;
  1. DELETE FROM homework WHERE weight >65;
技术分享
 
  • 更新 (update)
--更新表中姓名为小琴的人的体重:
UPDATE 表名 SET 体重列明=数据 姓名列名 =‘姓名‘ AND 主键=数据;
  1. UPDATE homework SET weight=60 WHERE NAME=‘小琴‘AND id=88;
技术分享
 
--更新表中所有人的备注都为员工:
UPDATE 表名 SET 备注列名=‘数据‘;
  1. UPDATE homework SET jieshao=‘员工‘;
技术分享
 
--更新表中小华的性别改为男、体重75、介绍为经理:
UPDATE 表名SET sex=‘男‘,weight=70,jieshao=‘经理‘ WHERE NAME=‘小华‘;
  1. UPDATE homework SET sex=‘男‘,weight=70,jieshao=‘经理‘WHERE NAME=‘小华‘;
技术分享
  • 查询 (select)
--查询所有人的姓名:
SELECT 列名 FROM 表名;
  1. SELECT NAME FROM homework;
技术分享
 
--查询所有人的信息:
SELECT * FROM 表名;
  1. SELECT * FROM homework;
技术分享
 
--查询所有员工的姓名和性别:
 
SELECT 姓名列名 ,性别列名 FROM 表名 WHERE 列名=‘数据‘;
  1. SELECT NAME ,sex FROM homework WHERE jieshao=‘员工‘;
技术分享
 
 
 



null



mysql中表的练习