mysql数据库:
# - 什么是sql语句:结构化查询语句
(一段只能被数据识别的语句,并且可以对数据库中的数据进行增删改查)
sql语句的组成
- DML-->数据操作语言 (数据库中的表结构进行增删改查)-->insert,delete,update
- DDL-->数据定义语言 (是对数据库中的表结构进行操作)-->alter,create,drop等
- DCL-->数据控制语言 (数据库中权限设置以及事务提交和回滚)-->grante,revoke,commit,rollback等
- DQL-->数据查询语句 (数据库中的查询)-->select
1.创建
语法create table
表名(
字段名1 数据类型
字段名2 数据类型
...
字段名n 数据类型
)
注意:最后一个字段的数据类型后面不在需要添加逗号
例如
2.插入
语法1:insert into 表名(字段1..字段n)valuse(字段1的值..字段n的值)
语法2:insert into 表名 values(字段1的值..字段n的值)
语法1的好处是,插入数据的时候,可以自行选择插入数据的字段顺序
且碰到没有的非空约束的条件/有默认约束的字段时,我们可以选择不动手
插入该字段
语法2的表名后面没有接对应的字段,这就要求使用者插入数据的时候
数据的值必须和表中字段出现的先后顺序一一对上
例如
3.查询
语法1:select 字段1,字段2...字段n from 表名 (where条件是...)
语法2:select * from 表名 (where条件是...)
注意:select在查询数据的时候,需要添加where条件进行筛选,
否则,如果数据量过大,每次都查询所有数据,会过度占用系统资源
查询语句中还支持关系运算符
例如
null:判断是不是null ,要使用is/is not
例如
and/or
4.修改
语法:update 表名 set 字段1=值1,字段2=值2....字段n=值n (where条件是...)
注意:update,在更新数据的时候,一定要添加where条件
否则,整个表中的数据都会被修改
例如
5.删除(delete,drop,truncate)
delete:删除表中所有数据,可回滚
语法:delete from 表名 (where条件是...)
drop:删除表结构(包含数据),不能回滚
语法:drop table 表名
truncate:删除表中所有数据,不能回滚
语法:truncate table 表名
注意:不能和 where 连用
例如
数据库事务的提交和回滚
conmmit ->提交事务
rollback ->回滚数据
set autocommit=0 ->设置数据库不自动提交
set sutocommit=1 ->设置数据库自动提交
注意: 数据库默认的情况下是自动提交数据的,如果我们设置了不自动提交 set autocommit=0;
那么我们进行增删改之后,需要手动提交 commit提交;
否则,并不会真实的影响到数据库中的数据
6.修改表结构
新增字段
语法:alter table 表名 add 新增字段名 数据类型
修改字段的数据类型(不能在有数据的情况下去修改)
语法:alter table 表名 modify 字段名 新的数据类型
例如
7.查看表结构
desc 表名;
标签:--,数据库,MYSQL,语法,修改,字段,表名,数据,结构
From: https://www.cnblogs.com/wmma/p/16804922.html