增删改查--windows下mysql客户端--表的使用
>>>>>>>>>>>>>>>>>>>>
selet 5种子句之where常用运算符:
可能用到的比较运算符号:
<:小于。。<=:小于等于
>:大于。。>=:大于等于
=:等于
in:在某个集合内
<>或!=:不等于
between 数据1 and 数据2:在某范围内
is null:是空的。。not is null:不是空的
可能用到的逻辑运算符号:
not或!:逻辑非
or或||:逻辑或
add或&&:逻辑与
创建数据库:略。一般选用utf8字符集
创建(create)表:
field name:字段名、域名、列名。
datatype:数据类型。
len:字符长度。
(注:先选中一个数据库,若在linux或dos中,则先输入use 数据库名 回车。)
语法结构:create table 要创建的表名
(列名1 datatype(len),列名2 datatype(len));
插入(insert into )列的数据:
注:表中有列,插入的数据单独一行:
语法结构:insert into 表名(要插入数据的列1,要插入的列2) values(要插入的数据1,要插入的数据2);
insert into student(id,name) values(1111,'学生');
(注:1、主键不能重复;2、非空的列必须要插入空值;3、所有的列都要插入值得话,表名后面可以不带括号;4、必须要有列才能插入数据)
删除(delete)列:
注:表中有列,删除后整行消失
语法结构:
(1)要删除 表 中的指定数据的列
delete from 表 where 指定列= '要删除的列的数据';
(2)要删除 符合两个条件 或两个条件之一的数据的列
delete from 表名 where 指定位置列名1= '要删除的列的数据' and 指定位置PK列名2= '要删除的列的数据';
delete from 表名 where 指定位置列名1= '要删除的列的数据' or 指定位置PK列名2= '要删除的列的数据';
(3)要删除 表中指定数据为 空 的列:
delete from 表名 where 指定位置列名 is null;
通用语法结构:delete from 表名 where 指定位置PK列 判断符号 判断的数据;
可能用到的判断符号:<,>,<>,is,not
更新(update)列的数据:
alter与update区别:alter修改表属性;update:更新表中的列数据!
注:表中列、数据 才能更新
语法结构:
(1)跟新表中 指定数据
update 表名 set 要更新的列名 = 要更新的数据
where 位置PK列1= 数据 and 位置PK列名2 = 数据
(2)更新表中 多个数据
update 表名 set 要更新的列名1 = 要更新的数据,
要更新的列名2 = 要更新的数据
where 位置列名1= 数据 and 位置列名2 = 数据
(注意逗号)
//(3)更新表中 指定长度的数据
update 表名 set 要更新的列名1 = 要更新的数据
where 数据类型_length 位置列名1= 数据
查询(select)列:
注:可查询整列、列中的某几行
语法结构:
(1)查询表中 所有列的信息:
select * from 表名;
(1.1)查询表中 存在数据1或数据2的 所有列的信息:(or或in都可实现)
select * from 表名 where 列名 in (数据1,数据2);
(1.2)查询表中 数据1和数据2之间的 所有列的信息:(and或between and)
select * from 表名 where 列名 between 数据1 and 数据2;
(1.3)查询表中 不包含数据1和数据2的 所有列的信息:(and或not in)
select * from 表名 where 列名 not in (数据1,数据2);
(1.4)查询表中 大于数据1且小于数据2 或大于数据3且小于数据4 的 所有列的信息:
select * from 表名 where (列名 between 数据1 and 数据2) or (列名 between 数据3 and 数据4);
select * from 表名 where (列>数据1 and 列<数据2) or (列>数据3 and 列<数据4);
(2)查询表中指定列 的所有数据:
select 要查询的列 from 表名;
(3)查询表中指定列 的指定数据:
select 要查询的列 from 表名 where 指定的位置PK列=PK列的指定数据;
(4)查询表中多个列 的所有数据:
select 要查询的列n,要查询的列n++ from 表名
(5)查询表中 含有 某字段列的 所有数据:(即:模糊查询)
selete * from 表名 where 列名 like '%数据%';
selete * from 表名 where 列名 not like '%数据%';
(n)多表查询
通用语法结构:
单表查询:select 要查询的列 from 表名 where 指定位置PK列 判断符号 数据;
多表查询1:select 结果 from 被查询结果的表名1 where exists(
select * from 要查询的条件的表名2 where 条件 and exists(
select * from 与两张表相交集的表名3 where 表名3.列3 =表名2.列3 and 表名3.列2=表名1.列2))
多表查询2:select 要查询的列1, 要查询的列2 from 被查询的表1,被查询的表2 where 条件
可能用到的判断符号:<,>,<>,is,no
修改(alter)表的属性:
注:不能改变表中列的数据,列的数据用update更新
(1)在表中新增一个空的列:
alter table 表名 add 列名 列名数据类型(长度) 是否为空;
(2)新增到指定某一列后:
alter table 表名 add 列名 列名数据类型(长度) 是否为空 after 指定的那一列;
(3)删除列:(注:alter 删除整列,delete删除整行)
alter table 表名 drop 列名;
(4)修改列类型:
alter table 表名 modify 要修改的列名 新的数据类型(长度len);
(5)修改列名:(modify 出了不能修改列名,其他与change 一样。column 可加可不加)
alter table 表名 change column 要修改的列名 新列名 新的数据类型(长度len);
(6)修改表名:
rename table 原表名 to 新表名;
附录:
mysql练习题:http://www.cnblogs.com/xuehx/p/6204545.html
建表原则:1、表名、列名不能有空格和中文
2、不能以数字开头
3、表一般都有前缀,以下划线分隔
4、列明见名思意
5、列明带上注释
字符串类型:
时间类型:
数值类型:
欢迎转载,请注明出处!

浙公网安备 33010602011771号