数据库相关文章

数据库(Database)是按照数据结构来组织、存储和管理数据的仓库,它产生于距今六十多年前,随着信息技术和市场的发展,特别是二十世纪九十年代以后,数据管理不再仅仅是存储和管理数据,而转变成用户所需要的各种数据管理的方式。数据库有很多种类型,从最简单的存储有各种数据的表格到能够进行海量数据存储的大型数据库系统都在各个方面得到了广泛的应用。

在信息化社会,充分有效地管理和利用各类信息资源,是进行科学研究和决策管理的前提条件。数据库技术是管理信息系统、办公自动化系统、决策支持系统等各类信息系统的核心部分,是进行科学研究和决策管理的重要技术手段。

MySQL存储UUID数据类型

2020年10月22日

最近使用OAuth认证,认证服务器传过来的用户ID是UUID类型的数据,如何再MySQL中存储UUID数据类型,记录如下:将其存储起来,VARCHAR(36)好像您希望完全适合它一样,或者VARCHAR(255)无论如何都要以相同的存储成本进行计算。这里没有理由大惊小怪。请记住,VARCHAR字段是可变长度的,因此存储成本与它们中实际有多少数据成正比,而不是与其中可能有多少数据成正比。存储它BIN...

MySQL存储IP的一些总结

2020年09月28日

最近需要将所有IPv4保存到数据库,但是表结构设计的有点不合理,现在保存了7600万左右的数据,已经使用30G空间,使用如下命令统计:USE information_schema; SELECT TABLE_SCHEMA, SUM(DATA_LENGTH)/1024/1024/1024 FROM TABLES GROUP BY TABLE_SCHEMA;这里将单位换算成G,最后结果如下:显然...

MySQL查询大量数据分页

2020年09月10日

在上一篇文章:MySQL查询大量数据所面临的一些问题,说明了在MySQL中查询大量数据所面临的问题。遇到查询大型数据,应该怎么解决呢?和容易想到就是分页查询,这是一个正确的方法,应该如何分页?最主要就是使用MySQL中的LIMIT 和 OFFSET关键字,下面是示例:SELECT * FROM Orders LIMIT 30;上面查询了:“订单”的表中选择1-30(含)之间的所有记录如果我们想选择...

MySQLdb执行事务

2020年09月10日

最近有一个需求:将查询出来的数据插入到其他表,之后删除原来表的数据。这里就涉及到数据库事务的问题:如果插入表失败,那么就不能删除这条数据。这里就需要使用到数据库事务,下面是Python+MySQLdb的具体实现代码:get_all = cur.fetchall() for item in get_all: sms_receive_id = item[0] phone_numb...

MySQLdb cursor closed

2020年09月10日

在执行MySQL事务查询的时候,出现了如下错误:cursor closed具体错误代码如下:for item in get_all: sms_receive_id = item[0] phone_number = item[1] content = item[2] receive_time = item[3] is_type = item[4] ...

MySQL查询大量数据所面临的一些问题

2020年09月10日

最近需要将历史数据保存到其他表,也就是俗称的分表,但是光是一年的数据就有1000w左右,查询出来用了10多分钟,之后开始遍历字段,遍历每个字段都需要非常长的时间,具体代码如下:get_all = cur.fetchall() for item in get_all: sms_receive_id = item[0] phone_number = item[1] co...

MySQL查询时间

2020年09月10日

在MySQL中如何查询时间,下面是一个示例:SELECT * FROM events where event_date between '2018-01-01' and '2018-01-31'; -- Can include time by specifying in YYYY-MM-DD hh:mm:ss format: SELECT * FROM events WHERE e...

Redis 列表增加值与删除值

2020年09月08日

一、增加值:最近在使用Redis过程中遇到一些问题,将遇到的问题记录下来,方便以后遇到同类型问题可以参考此文。Redis 列表增加使用如下命令:rpush phone_number_list "7097042455"将一个值推入列表的右端,在Redis中列表的左端为开头,右端为结尾,所以列表在需要排序的时候很好用,新的数据直接推到左边,这样新数据就会显示在顶端。如果是需要推入左边,使用如下命令:l...