一:sql语句

1.什么是SQL语句?

是访问和操作关系数据库的标准语言。只要是关系数据库,都可以使用 SQL 进行访问和控制。

  • 库>表>记录

二:基本SQL语句之库操作


create database 数据库名称; 查
1.查看所有
show databases; 2.查看单个库
show create database 数据库名称; 改
1.修改字符编码
alter database 数据库名称 charset='编码'; 删
1.删除数据库
drop database 数据库名称;

三:基本SQL语句之表操作

1.查看当前所在库名称

select database();

2.切换数据库

use 数据库名称;


1.创建表一定要给字段(每个表最少要有一个 字段=列)
create table 表名(字段名称 字段类型) 查
1.查看当前库下面所有表名称
show tables; 2.查看指定表的详细信息(创建语句)
show create table 表名; 3.可以简写desc(查看表结构)
describe 表名; 改
1.修改表名
alter table 表名 rename 新表名; 删
1.删除表名
drop table 表名;

四:基本SQL语句之记录操作

操作记录之前肯定得先有库和表

1.先创建库
create database db1;
2.切换到库内
use db1;
3.创建表
create table t1(id int,name varchar(32)); # 存储最多32个字符
4.查看表结构
desc t1


1.表内插入单个数据
insert into t1 values(1,'jason');
表内插入单个元素格式
insert into 表名 values('按照字段顺序一一传值(逗号隔开)'); 2.表内插入多个数据
insert into t1 values(1,'jason'),(2,'tony'),(3,'data');
insert into 表名 values(...),(...),(...); 查
1.查询指定表内所有字段数据(*=所有)
select * from 表名; 2.指定查询表内多个字段(也可以通过库名.表名跨库)
select 字段名1,字段名2 from 表名; 3.解决查询字段过多问题
select * from mysql.user\G;
如果字段过多导致展示错乱 还可以使用\G结尾分行展示 改
1.将表名ti内,id为1的name字段从原来的jason修改成jasonSB
update t1 set name='jasonSB' where id='1';
格式:
update 表名 set 字段名=新值 where 字段名=存在的值/条件 where : 筛选条件 删
1.删除指定表内字段对应的值
delete from 表名 where 字段名=存在的值 注意:不加条件会全部删除

五:创建表的完整语法

create table 表名(
字段名1 字段类型(数字) 约束条件,
字段名2 字段类型(数字) 约束条件,
字段名3 字段类型(数字) 约束条件
);

数字 : 表示字段的长度

约束条件 : 基于字段类型之上的额外约束

  • 注意事项
1.字段名和字段类型是必须的 数字和约束条件是可选
2.约束条件可以有多个
3.最后一个字段结尾不能有逗号 (不容易发现)

六:操作表的SQL语句(进阶版)

1.添加表字段
1.表内添加字段pwd与指定类型
alter table t9 add pwd int; 2.表内指定添加hobby字段到age字段后面
alter table t9 add hobby varchar(32) after age; 3.表内指定添加字段nid 类型int 到字段最前面
alter table t9 add nid int first;
2.删除表字段
alter table t9 drop nid;
3.修改表名称
1.修改表名称
alter table t1 rename t2; 2.关键字(rename)修改表名称
rename table t1 to t123; 3.同时修改多个表名称
rename table t2 to t20,
t3 to t30,
t4 to t40;
4.修改字段名和字段类型
1.modify只能修改字段类型
alter table t9 modify age tinyint; 2.change能修改字段名和类型
alter table t9 change pwd password int;

七:复制表

查询语句执行的结果也是一张表,可以看成虚拟表
1.复制表结构+记录 (key不会复制: 主键、外键和索引)
create table new_service select * from service; 解释:
new_service复制service内的结构与记录(key不复制) 2.只拷贝表结构(不包含key)
create table new1_service select * from service where 1=2; 解释:
new1_service复制service内的结构,条件成立是复制记录,不成立不复制记录 3.拷贝结构包含各种key(不包含记录)
create table t4 like employees; 解释:
拷贝结构包含各种key,不包含记录,关键字 like

最新文章

  1. 使用UITableView的分组样式
  2. ABAP工作区,内表,标题行的定义和区别
  3. C#日期格式转换
  4. 【翻译】Tomcat 6.0 部署与发布
  5. 使用Chrome工具来分析页面的绘制状态
  6. WPF嵌入百度地图完整实现
  7. keychain中我的证书与证书, p12与pem, apns, 推送
  8. MySQL注入总结
  9. 利用MiddleGen-hibernate-r5生成hbm文件及POJO文件
  10. 腾讯云CDN python SDK
  11. 转载 12步轻松搞定python装饰器
  12. Emacs 番茄钟 pomidor
  13. python - 系统交互操作(subprocess)
  14. AngularJS 中{{}}与ng-bind指令
  15. python测试开发django-20.添加创建时间DateTimeField
  16. 20165310 java_blog_week3
  17. darknet-训练自己的yolov3模型
  18. MySQL数据库函数
  19. ArrayList LinkList比较
  20. apply、call、bind有什么区别?

热门文章

  1. AlertManager企业微信报警,时间是UTC时间,错8个小时的两种解决办法
  2. 监控告警之elastalert部署及配置全解
  3. Jenkins和Gitlab CI/CD自动更新k8s中pod使用的镜像说明
  4. PAT (Basic Level) Practice 1013 数素数 分数 20
  5. Xorg+LXDE迁移到Xwayland(同时支持Waydroid和Wine)记录
  6. HDU4991 Ordered Subsequence (树状数组优化DP)
  7. 自主创建mybtis管理应用,用以横向管理数据源
  8. 通过netty把百度地图API获取的地理位置从Android端发送到Java服务器端
  9. C#中的特性+反射
  10. Windows下pip换成清华源