DDL语句:操作数据库,和表等。
数据库:
1.查看:show databases;
2.创建数据库:create database 数据库名;
create database if not exists 数据库名;
3.删除:
drop database 数据库名字;
drop database if exists 数据库名;
4.使用数据库:
use 使用数据库;
5.查看当前使用的数据库:
select database();
表:
1.查询:
show tables;
2.查看表结构
desc 表名;
3.创建:
create table 表名(
字段名1 数据类型1,
字段名2 数据类型2,
字段名3 数据类型3
);
4.删除
drop table 表名;
drop table if exists 表名;
5.修改
数据类型:
1.数值:整数和小数
int,bigint,decimal(总长度,小数点后保留几位)
2.日期
date
time
datetime
3.字符串
char定长
varchar变长
text
longtext
DML对表中的数据进行操作
1.insert into 表名 (列名1,列名2)values (值1,值2);
给所有列添加数据,列名的列表可以省略,不好这样。
批量添加的时候可以把values的值列表给逗号隔开。
2.update 表名 set 列名1=值名1,列名2= 值名2,where,条件;
3.
子查询
1.就是查询来的列,新增任意的列而已。
2.from,把查询的看作一张表,从新表查询
case when。。。。then。。。。end
3.where
在三个修饰后面可以进行子查询
行转列
列转行
连接查询
我还活着,我有一切。我会飞,本来也是肉鸟,长出了白色羽毛
比如外键
where on必须写条件
其实一摸一样》
内连接和外连接
左连接,右连接
就是表的顺序问题
左外连接,右外连接
内连接,左表没有的,不要,游标没有也不要
索引外连接的特点也有外连接呢了
on生成临时表,所以再执行where
join只写也可以笑死了,装上来了
jdbc
jar包
Api
自己调
jar
建一个文件夹,来保存包,没有导入
1.add lib
2.导入?
3.建立连接
字符串
配置
语句对象
该执行sql
low bi一群
优化,适者生存
作用域,这是我的问题和别人都没有关系
建立连接
dml
修改一下语句对象
更好用
append拼接
?
set 问号,染后
预编译
不用
用于注入的问题,他刻意解决这个问题了
直接设置
sql注入
黑客
删除
抛异常,try catch陷入绝境
封装的工具类
历史总是惊人的相似
sql注入
通过插入字符
通过什么sql
不一定是谁
好家伙