当前位置: 首页 > news >正文

个人如何建设网站网站建设合同通用范本

个人如何建设网站,网站建设合同通用范本,动漫设计与制作主要学什么,网站建设资料收集一、数据结构设计 正确的数据结构设计对数据库的性能是非常重要的。 在设计数据表时,尽量遵循一下几点: 将数据分解为合适的表,每个表都应该有清晰定义的目的,避免将过多的数据存储在单个表中。使用适当的数据类型来存储数据&…

一、数据结构设计

 正确的数据结构设计对数据库的性能是非常重要的。 在设计数据表时,尽量遵循一下几点:

  1. 将数据分解为合适的表,每个表都应该有清晰定义的目的,避免将过多的数据存储在单个表中。
  2. 使用适当的数据类型来存储数据,避免使用过大或不必要的数据类型,以节省空间并提高读写效率。
  3. 避免使用过多的NULL值,尽量设计出不含NULL值的表结构,有助于节省存储空间并提高查询效率。

1.1 创建数据表示例

用户数据表

create table users (id int auto_increment primary key,username varchar(50) not null,email varchar(100) not null,balance int,created_at timestamp default current_timestamp
);

二、索引的使用

2.1 什么是索引

首先我们要了解什么是索引、它是干嘛?

索引是一种用于提高数据库查询性能的数据结构。你可以把它想象成一本书的目录,可以提高查询的速度。也就是说,当你在表的列上创建索引时,数据库会根据这些列的数值快速定位到具体的行,不需要整表的扫描。

2.2 常见的索引类型

  1. 普通索引:不要求被索引的列的值是唯一的。
  2. 唯一索引:要求被索引的列的值是唯一的。
  3. 主键索引:要求被索引的列的值是唯一的,且不允许为空。
  4. 全文索引:在本文数据中进行全文搜索, 比如在某一段文章中查找出特定的关键字。

在使用索引时,尽量遵循这几点:

  1. 根据实际需求创建合适的索引,通常对经常用于查询条件的列进行索引。
  2. 避免在过多的列上使用索引,这会增加写操作的开销,还会占用额外的存储空间。
  3. 定期检查删除不再使用的索引。

2.3 索引示例 

添加索引

create index idx_username on users (username);

三、增加查询语句效率

我们在编写查询语句时,尽量遵循以下几点:

  1. 尽量不去使用 select *而是明确列出需要的字段,避免读取不必要的数据。
  2. 谨慎使用子查询,尽量优化为连接查询以及其他方式。
  3. 合理使用join,多表连接可能会引发性能为题,使用合适的连接类型来优化查询效率。

3.1 优化查询示例 

优化查询语句

select id, username from users where username = 'zhangsan' limit 1;

四、正确使用事务

4.1 什么是事务?

它是一组sql查询的集合,这些查询要么全部成功执行,要么全部失败回滚。事务可以确保数据的完整性和唯一性。

4.2 事务的特性

事务具有以下特性:

  1. 原子性:事务中所有操作要么全部成功执行,要么全部失败回滚。
  2. 一致性:事务开始之前和结束之后,数据库的完整性约束没有被破坏,数据始终保持一致状态。
  3. 隔离性:多个事物并发执行时,每个事物都应当与其他事物相互隔离。
  4. 持久性:一旦事务进行提交,它所做的修改会永久的保存在数据库中。

事务的使用尽量遵循一点:

合理设置事务的范围,避免事务持有锁时间过长导致性能问题。

4.3 事务的示例

使用事务

start transaction; 开始一个事务,后续sql将视为一个整体,要么全部执行,要么全部失败。

commit; 提交事务,如果前面的所有操作都执行成功,那这些操作都将保存到数据库中。

start transaction;
insert into orders (user_id, total_amount) values (1, 100);
update users set balance = balance - 100 where id = 1;
commit;

五、分区表

5.1 什么是分区表

通过对数据表进行分区,可以提高查询性能。

也就是说当我们有一个很庞大的数据进行处理时,通过分区表可以减少查询所需的数据量,减缓查询时间。

创建分区表尽量遵循一点:

  1. 根据数据的时间范围进行分区,可以加快查询速度,针对历史性数据的查询。

5.2 分区表示例

创建分区表

partition by range (year(log_time)) 表示按照log_time字段进行分区。

partition p0 values less than(2022) 表示创建一个名为p0的分区,用于存储log_time 小于2022的数据。

create table logs (id int auto_increment,log_time timestamp,message text,primary key(id, log_time)
) partition by range (year(log_time)) (partition p0 values less than (2022),partition p1 values less than (2023),partition p2 values less than (2024)
);
http://www.yayakq.cn/news/484863/

相关文章:

  • 注册网站的软件小叮当网站建设
  • 网站 语言切换怎么做免费论坛申请无广告
  • it项目网站开发的需求文档做网站简约学校网站
  • 微商城网站开发中国建筑协会证书查询
  • 创建网站首页模板网免费
  • 网站被百度惩罚怎么办竞价网站做推广
  • wordpress能做大站吗怎么宣传自己的网站推广
  • 石家庄有做网站的公司吗asp购物网站源码
  • 中文域名网站有哪些西宁手机网站建设
  • 公司开发个网站怎么做wordpress category order
  • 表白网站制作源代码wordpress阅读设置
  • 电子商务网站建设 价格wordpress上传图片占空间
  • 石家庄做网站邮箱电话小程序制作开发平台
  • 商城顺德网站建设wordpress 文章标题移动
  • 石家庄语音网站建设公司网站访问量怎么做
  • 学校网站的服务器手机软件app制作的三种方式
  • 济南网站备案程序深圳网页制作与网站建设方案维护
  • 聊城做网站公司信息百度一下你就知道移动首页
  • 长春网站建设流程世界杯比赛系统网页设计作业
  • 找国外公司做网站wordpress浏览次数插件
  • 做生存曲线的网站网站排名与什么有关系
  • 辽阳住房和城乡建设网站discuz网站伪静态设置
  • 网页设计建网站流程河南seo和网络推广
  • 建站推广什么意思帮齐家网做的网站
  • 如何填写网站开发验收单网站开发分为哪几块
  • 江门做网站多少钱如何定制微信小程序
  • 上海网站建设公司 红威做直播网站需要那些技术
  • 手机网站返回跳转网络文化有限公司网站建设策划书
  • 郑州正规网站制作公司建筑学网站推荐
  • 网页设计网站的分析单位建设网站的目的