1、MySQL数据库
命令行连接
mysql -uroot -p --链接数据库
update mysql.user set authentication_string=password('123456') where user='root' and Host='localhost';
--修改用户密码
flush privileges; --刷新权限
-------------------------------------------
--所有语句都使用;结尾
show databases; --查看所有数据库
mysql> use school;--切换数据库
Database changed
show tables;-- 查看数据库中所有的表
describe user;--显示user中的信息
create database westos; --创建数据库
exit;--退出连接
**数据库xx语言sql **
DDL:定义
DML:操作
DQL:查询
DCL:控制
2、操作数据库
操作数据库>操作数据库中的表>操作数据库中表的数据
mysql 关键字不区分大小写
2.1、操作数据库
-
创建数据库
CREATE DATABASE IF NOT EXISTS westos
-
删除数据库
DROP DATABASE IF EXISTS hello
-
使用数据库
USE `db01`
-
查看数据库
show databases; --查看所有数据库
2.2、数据库的列类型
数值
-
int 标准整数 4个字节
-
float 浮点数 4字节
-
double 浮点 8个字节
金融计算的时候,一般使用decimal 字符串形式的浮点数
字符串
- varchar 可变字符串 0-65535
- text 文本串 2^16-1
时间日期
-
date YYYY-MM-DD
-
time HH:mm:ss
-
datetime YYYY-MM-DD HH:mm:ss最常用的时间格式
-
timestamp 时间戳 , 1970.1.1到现在的毫秒数
null
- 没有值,未知
2.4、数据库的字段属性(important)
Unsigned
- 无符号的整数
- 不能声明为负数
zerofill
- 0填充
自增
- 通常用来设计主键 index 必须是整数类型
2.5、创建表
CREATE TABLE IF NOT EXISTS `student`(
`id` INT(4) NOT NULL AUTO_INCREMENT COMMENT '学号',
`name` VARCHAR(30) NOT NULL DEFAULT '匿名' COMMENT '姓名',
`pwd` VARCHAR(20) NOT NULL DEFAULT '123456' COMMENT '密码',
`sex` VARCHAR(2) NOT NULL DEFAULT '男' COMMENT '性别',
`birth` DATETIME DEFAULT NULL COMMENT '出生日期',
`address` VARCHAR(100) DEFAULT NULL COMMENT '家庭住址',
`email` VARCHAR(50) DEFAULT NULL COMMENT '邮箱',
PRIMARY KEY(`id`)
) ENGINE=INNODB DEFAULT CHARSET=utf8
修改表名
alter table student rename as student1
增加字段
alter table student add age int(10)
修改字段
ALTER TABLE student MODIFY age varchar(10) --修改约束
ALTER TABLE student CHANGE age age1 int (10) --修改字段名
删除字段
ALTER TABLE student DROP aged