
mysql
文章平均质量分 87
"追风者"
这个作者很懒,什么都没留下…
展开
-
mysql数据库(九)锁机制
所谓锁就是为了保证数据安全性而设计出来的,举个例子来说就像两人在办公室同时打印文件,为了使打印的内容不混乱,必须等一人打印完以后另一个人才能打印,如果把打印机看出数据,在一个人修改数据时就相当于上了一把锁,另一个人必须等待其修改完成也就是开锁以后才能进行修改操作,这就是锁。原创 2024-11-28 21:25:51 · 1065 阅读 · 0 评论 -
mysl数据库(八)事务、三种读现象
事务是mysql的一种机制,一个事务里可以包含多条sql语句。执行事务相当于拍了一张快照,在事务执行完提交以前可以回滚至最初的状态,当然事务中也有保存点,可以将事务回滚至保存点处。原子性:指事务内部的sql语句是一个整体,有一条运行失败,其他的sql语句也会运行失败。一致性:指事务执行前后状态要保持一致。例如转账前后,转入方和转出方的总金额保持不变。隔离性:多个事务并发运行彼此之间互不影响。持久性:事务提交以后对数据库中数据的改变是持久的,即使数据库故障也不会对其有影响。原创 2024-11-27 20:36:56 · 1006 阅读 · 0 评论 -
mysql数据库(七)索引
索引是存储引擎中一种数据结构,或者说数据的组织方式。索引又称之为键key,为数据建立索引就好比是为书建目录,目的是为了便于查找数据。显然的是为数据建立索引以后需要额外的空间存放建立的键值对关系,因此当对数据进行增删改时同时也需要修改索引关系,这将降低增删改的效率。然而我们平时使用数据库时,查询与增删改的比率大概为10:1,因此索引的建立可以大大提高我们的工作效率。建立索引的原则:在程序上线前就考虑好索引问题,对那些用户可能频繁使用的查询数据加上索引。原创 2024-11-26 15:59:25 · 813 阅读 · 0 评论 -
mysql数据库(六)pymysql、视图、触发器、存储过程、函数、流程控制、数据库连接池
使用视图我们可以把查询过程中的临时表摘出来,用视图去实现,这样以后再想操作该临时表的数据时就无需重写复杂的sql了,直接去视图中查找即可,但视图有明显地效率问题,并且视图是存放在数据库中的,如果我们程序中使用的sql过分依赖数据库中的视图,这会使得扩展sql极为不便,因此视图不常使用。我们知道mysql查询语句是通过逻辑判断的方式进行查询的,而1=1的结果永远为真,这就会导致没有输入任何用户和密码的情况下依然可以查询到用户信息。存储过程的优点是:用于替代程序写的SQL语句,实现程序与sql解耦;原创 2024-11-20 21:00:20 · 1148 阅读 · 0 评论 -
mysql数据库(五)多表查询
查询中使用的表如下所示。原创 2024-11-13 23:08:56 · 913 阅读 · 0 评论 -
mysql数据库(四)单表查询
需要注意的是mysql默认的是ONLY_FULL_GROUP_BY模式的分组,简单来说就是分组后查询出来的字段中只能有一个明确的值,如果有多个就会报错。group by用于对数据进行分组,分组的目的是将数据中某一字段的相同内容进行归类,并对归类后的数据进行一系列的操作。这些关键词的执行顺序是:from(选出记录)、where、group by、having、select(根据指定字段保留记录内容)、distinct、order by、limit。having用于对分组结果进行筛选。GROUP BY 分组。原创 2024-11-11 21:17:44 · 587 阅读 · 0 评论 -
mysql数据库(三)表的完整性约束、表与表的关系
如果没有不为空且唯一的字段,mysql会自动创建隐藏字段作为主键,主键是mysql索引记录的重要字段,隐藏主键会对mysql的索引效率产生一定的影响。对于大部分的数据类型而言默认是允许空值的,如果不想为空需要设置not null,也可以设置默认值default,这样插入值为空时会自动填充默认值。主键primary key是innodb存储引擎组织数据的依据,一张表中必须有且只有一个主键,并且主键唯一且不能为空。PRIMARY KEY (PK) 标识该字段为该表的主键,可以唯一的标识记录。原创 2024-11-07 21:09:49 · 879 阅读 · 0 评论 -
mysql数据库(二)存储引擎、表操作、数据类型
对于表中数据的存储,InnoDB 存储引擎采用了聚集(clustered)的方式,每张表都是按主键的顺序进行存储的,如果没有显式地在表定义时指定主键,InnoDB 存储引擎会为每一 行生成一个 6 字节的 ROWID,并以此作为主键。NDB 存储引擎是一个集群存储引擎,类似于 Oracle 的 RAC 集群,不过与 Oracle RAC 的 share everything 结构不同的是,其结构是 share nothing 的集群架构,因此能提供更高级别的 高可用性。因此整形一般不指定显示宽度。原创 2024-11-06 21:36:16 · 1129 阅读 · 0 评论 -
mysql数据库(一)mysql介绍及基本操作
数据库其本质就是一个事先写好的socket服务端与客户端程序,使用mysql是为了解决数据共享、查询效率以及数据安全性等一系列问题。总的来说使用数据库可以把程序员从数据管理的繁琐任务中解脱出来,专注于自己程序逻辑的编写。数据:数据是描述事物的符号,例如文字、图像、声音等等。数据库:数据库是按一定规则存放数据的仓库。数据库中的数据按一定的数据模型组织、描述和储存,具有较小的冗余度、较高的数据独立性和易扩展性,并且可以为用户所共享。原创 2024-11-05 20:56:49 · 998 阅读 · 0 评论