【mysql相关】

01.07复习mysql**

mysql -uroot -p123456  --连接数据库
update mysql.user set authentication_string=password(‘123456‘)where user=‘root‘ and Host = ‘localhost‘; --修改用户密码 
flush privileges;   --刷新权限
--------------
--两个单横线是注释
--注意语句以分号;结尾
show databases; --查看所有的数据库

mysql>use school --切换数据库, 使用:use 数据库名
Database changed 

show tables;  --查看数据库中的表
describe student;  --显示数据库中student表的信息

creat database westos; --创建一个数据库westos
exit;  --退出连接

操作数据库:

CREATE DATABASE IF NOT EXISTS www  --创建数据库,加if not exists防止重复
--数据库中自动变成大写
DROP DATABASE IF EXISTS www	--删除数据库www
USE `user`   
SELECT `USER` FROM student  --查询student表中USER字段的信息
SHOW DATABASE

数据库列类型:

data  YYYY-MM-DD,日期格式
time  HH: mm: ss 时间格式
datetime YYYY-MM-DD HH:mm :ss最常用的时间格式
timestamp  时间戳,19701.1到现在的毫秒数
---

数据库字段属性:

Unsigned:是无符号整数,该列不能为负数
zerofill:不足位数0填充,比如int(3) 输入5,结果为005
自增:通常是用于设计整数类型的主键,自增;
非空 NULL not null ,这个时候不赋值会报错
NULL,如果不填,就是null

创建数据库表:

CREATE TABLE IF NOT EXISTS `student`(
--表的名称(student)和字段尽量用` `括起来,防止因为是关键字而造成报错
--字符串一般使用单引号
--AUTO_INCREMENT是自增
	`id`  INT(4) NOT NULL AUTO_INCREMENT COMMENT ‘学号‘,
	`name` VARCHAR(30) NOT NULL DEFAULT  ‘匿名‘ COMMENT ‘姓名‘,
	--default是设置默认值
	`pwd` VARCHAR(20)NOT NULL DEFAULT ‘123456‘ COMMENT ‘密码‘,
	`sex` VARCHAR(2)NOT NULL DEFAULT ‘男‘ COMMENT ‘性别‘,
	`birthday` DATETIME DEFAULT NULL COMMENT ‘出生日期‘,
	`address` VARCHAR(100) DEFAULT NULL COMMENT ‘住址‘,
	`email` VARCHAR(50) DEFAULT NULL COMMENT ‘电子邮箱‘,
	--添加主键PRIMARY KEY
	PRIMARY KEY(`id`)
	
)ENGINE INNODB DEFAULT CHARSET = utf8

修改与删除表/表中字段:

ALTER TABLE teacher RENAME AS teacher1
--修改表名
ALTER TABLE teacher1 ADD age INT(11)
--增加表的字段age
ALTER TABLE teacher1 MODIFY age VARCHAR(11)
ALTER TABLE teacher1 CHANGE age age1 INT(1)
--change和modify区别:modify用于修改约束,change用来给字段重命名

ALTER TABLE teacher1 DROP age1 --删除表的字段
DROP TABLE IF EXISTS teacher1  --删除表
--sql关键字大小写不敏感

外键:

---方式一创建表时添加
KEY `FK_gradeid`--定义键
--FK_gradeid是约束名
CONSTRAINT `FK_gradeid` FOREIGN KEY (`gradeid`) REFERENCES `grade`(`gradeid`) --给外键添加约束,CONSTRAINT为约束,REFENENCES为引用
当存被其他表引用(有外键关系)的时候此表是无法直接删除表的,需要先把那个表删除
--方式二创建后加外键
ALTER TABLE `student`
ADD CONSTRAINT `FK_gradeid` FORERIGN KEY(`gradeid`) REFERENCES `grade`(`gradeid`);
--就是说:添加 约束名 外键()引用 那个表 表中的(哪个字段)

其实,数据库存储数据即可,行为数据,列为字段;

后续用程序即可实现使用多张表的数据

DML(增删改):数据操作语言

insert update delete

select(不是

insert,update

INSERT INTO `表名`(`字段1`,`字段2`)values(‘值1‘),(‘值2‘)(...)
UPDATE `表名` SET `name` = ‘xxx‘ WHERE id = 1 --一定要加附加条件
DELETE FROM `表名` WHERE id = 1;
TRUNCATE `student` --清空student整个表

select (DQL,数据查询语言)

SELECT * FROM student --查询全部学生
SELECT * FROM score  
SELECT `列名1`, `列名2` FROM student
SELECT `StudentNo` AS 学号, `StudentName` AS 学生姓名 FROM student--这样用别名就很直观
--拼接字符串CONCAT(a,b)
SELECT CONCAT(‘姓名:‘,StudentName) AS 新名字 FROM student

【mysql相关】

上一篇:Photoshop 制作阴影的简单方法


下一篇:基于slim的神经网络模型的训练-笔记