python学习笔记Day.10-------------------数据库的基本操作

数据库是什么:数据库是按照数据结构来组织、存储和管理数据的仓库
常见的表中数据类型:字符串、数字、日期和时间
字符串:char()固定长度的字符串 varchar()非固定长度的字符串
数字:int(4字节) smallint(2字节) bigint(8字节)
数据库引擎:INNODB:安全,用实时事务存储数据,但速度较慢
MEMORY:速度快,用内存存储数据,但关闭服务器会导致数据丢失,不安全
MYISAM:非事务存储,速度快
事务:保证单个逻辑工作单元完整的执行,一个环节出错就整个工作作废
SQL功能分类
DDL:数据定义语言: 用来定义数据对象:列 表 行
DML:操作数据库表中的记录(加入数据)
DQL:用来查询数据
DCL:数据控制语言:用来定义访问权限和安全级别
常见命令(DDL):
创建数据库:create database 数据库名 character set utf-8;
修改数据库:alter database 数据库名 character set gbk(想改成的编码方式);
进入数据库:use 数据库名
创建表(必须先进入数据库才能建表)
:create table 表名(
列名 数据类型 【约束条件】,
列名 数据类型 【约束条件】,

);
注意:最后一行没有逗号
删除操作:DROP 数据结构(TABLE或者DATABASE);
修改操作:ALTER 数据结构(TABLE) 操作类型(ADD添加,MODIFY更改) 被修改的字段名 数据类型
重命名:RENAME
常见命令(DML):
插入操作: INSERT INTO 表名(列名1、列名2.。。)VALUE(列值1,列值2.。。);
批量操作:INSERT INTO 表名(列名1、列名2.。。)VALUES(列值1,列值2。。),(列值1,列值2。。),。。。;
更新操作:UPDATE 表名 SET 列名1 = 列值1,列名2 = 列值2.。。。
条件更新:UPDATE 表名 SET 列名1 = 列值1,列名2 = 列值2,。。。 WHERE 列名 = 值
查询所有:SELECT * FROM 表名
条件查询:将条件加在查询语句后WHERE 条件
排序:升序:ORDER 降序: ORDER ESDC
在查询中加入函数:exp:
SELECT SUM(A) FROM 表名
将表的A列全部加起来输出
在查询时分组:exp:
SELECT SUM(A) FROM 表名 GROUP BY id
按id分组,将各组的A列加起来输出
查询时筛选: exp:
SELECT 查询条目 FORM 表名 WHERE 条件
查询表中符合条件的记录的查询条目内容
分组过滤: exp:
SELECT SUM(A) AS sum FROM 表名 GROUP BY id having sum>100
查询表中哪个组的A列综合大于100,输出他的结果

添加外键:
在创建表时最后加:
CONSTRAINT 外键名 FOREIGN KEY(要作为外键的列名)REFERENCES 要关联到的表名(要关联到的列名)
为已有的表新增外键:
ALTER TABLE 表名 ADD 创建外键(如上)
注意:外键必须连接到一个不可重复的变量上,而外键自身是可以重复的。
要去除一个数据的不可重复性,不能用ALTER MODIFY去修改数据类型 而要用 ALTER DROP 约束条件去删除。
用外键索引去查询信息:
SELECT 要查询的信息 FROM 表1,表2,。。。 WHERE 外键1 = 关联变量1 AND 外键2 =关联变量2 .。。;
合并结果集:UNION 把两个表合成后去重, UNION ALL不去重
数据索引算法:到JOIN进去的表里找数据,符合条件则组合成新条目返回,不符合条件则对应数据返回NULL。 每一次JOIN符合从左到右规则。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值