摘要: 1 阅读全文
posted @ 2020-09-21 23:32 幽默de程序员 阅读(245) 评论(0) 推荐(0) 编辑
摘要: 题目:给一个不多于5位的正整数,要求:一、求它是几位数,二、逆序打印出各位数字。 1 //求它是几位数 2 public int digit(int num){ 3 if(num/10000!=0){ 4 return 5; 5 } 6 else if(num/1000!=0){ 7 return 阅读全文
posted @ 2020-09-21 23:26 幽默de程序员 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 打印出如下图案(菱形) 思路:使用两个for循环。第一个for循环负责打印出前四行的星,第二个for循环负责打印出后三行的星 public void rhombus(){ for(int i=1;i<=4;i++){ for(int j=1;j<=2*1-1;j++){ System.out.pri 阅读全文
posted @ 2020-09-21 23:26 幽默de程序员 阅读(238) 评论(0) 推荐(0) 编辑
摘要: 1.整数类型(TinyInt,SmallInt,mediumint,int,bigint) 2.实数类型(float,double,decimal) 3.枚举类型(enum) 4.日期和时间类型(datetime,timestamp) 5.字符串类型(varchar,char,text,blob) 阅读全文
posted @ 2020-09-21 23:22 幽默de程序员 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 1.user权限表 2.db权限表 3.table_priv权限表 4.columns_priv权限表 5.host权限表 阅读全文
posted @ 2020-09-21 23:19 幽默de程序员 阅读(138) 评论(0) 推荐(0) 编辑
摘要: 1.限定数据的范围(在我在恒华伟业实习的时候,经理就跟我说要缩小查询的时间范围了) 2.读、写分离 3.垂直分区 4.水平分区 (数据库分片的两种常见方案): 1.客户端代理:分片逻辑在应用端,封装在jar包中,通过修改或者封装JDBC层来实现 2.中间件代理:在应用和数据中间加了一个代理层。分片逻 阅读全文
posted @ 2020-09-21 23:18 幽默de程序员 阅读(79) 评论(0) 推荐(0) 编辑
摘要: 脏读 不可重复读 幻读 1.Read_uncommited(读取未提交) V V V 2.Read_committed(读取已提交) X V V 3.repeatable_read(可重复读) X X V 4.serializable(可串行化) X X X MySQL InnoDB存储引擎默认支持 阅读全文
posted @ 2020-09-21 23:04 幽默de程序员 阅读(92) 评论(0) 推荐(0) 编辑
摘要: 1》脏读,指用了没有存入数据库的数据 2》丢失修改,两个都改,只有一个见效,另一个丢失修改 3》不可重复读,指修改。多次读取一条记录发现其中某些列被修改 4》幻读,新增或删除。多次读取一条记录,发现记录增多或减少。 阅读全文
posted @ 2020-09-21 22:35 幽默de程序员 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 1.user权限表 2.db权限表 3.table_priv权限表 4.columns_priv权限表 5.host权限表 阅读全文
posted @ 2020-09-21 22:32 幽默de程序员 阅读(130) 评论(0) 推荐(0) 编辑
摘要: 1.UUID 2.数据库自增id 3.利用redis来生成id 4.Twitter的snowflake算法 5.美团的leaf分布式ID生成系统 阅读全文
posted @ 2020-09-21 22:30 幽默de程序员 阅读(59) 评论(0) 推荐(0) 编辑
摘要: 第一种方式:在执行create table时创建索引 create table user_index( id int auto_increment primary key, first_name varchar(16), last_name varchar(16), id_card varchar( 阅读全文
posted @ 2020-09-21 22:28 幽默de程序员 阅读(1915) 评论(0) 推荐(0) 编辑
摘要: 题目:请输入星期几的第一个字母来判断一下是星期几,如果第一个字母一样,则继续判断第二个字母。 思路: Monday 周一 Tuesday 周二 Wednesday 周三 Thursday 周四 Friday 周五 Saturday 周六 Sunday 周日。 所以看到M就只能是monday周一了。 阅读全文
posted @ 2020-09-21 22:20 幽默de程序员 阅读(491) 评论(0) 推荐(0) 编辑
摘要: delete、truncate只删除表的数据而不删除表的结构 drop会删除表的结构和数据 阅读全文
posted @ 2020-09-21 22:19 幽默de程序员 阅读(104) 评论(0) 推荐(0) 编辑
摘要: 数据库的索引有: 主键索引、唯一索引、全文索引、普通索引 缺点:需要占据物理和存储空间 优点: 1.加快了数据库的检索速度 2.降低了插入、删除、修改等维护任务的难度 3.唯一索引可以确保每一行数据的唯一性 4.可以在查询过程中使用优化隐藏器,提高系统性能。 阅读全文
posted @ 2020-09-21 22:16 幽默de程序员 阅读(136) 评论(0) 推荐(0) 编辑
摘要: 内连接:匹配两张表中相关联的记录 左外连接:除了匹配两张表中相关联的记录,还会匹配左表中剩余的记录,右表未匹配到的字段用null来表示 右外连接:除了匹配两张表中相关联的记录,还会匹配右表中剩余的记录,左表未匹配到的字段用null来表示 视图:视图通常是一个表或多个表的行或列的子集。对视图进行增删改 阅读全文
posted @ 2020-09-21 22:11 幽默de程序员 阅读(233) 评论(0) 推荐(0) 编辑
摘要: 1.查询语句中不要使用select*。耗费资源 2.尽量减少子查询,使用关联查询(left join,right join,inner join)来替代。 3.减少使用in或not in,使用exists,no exists或者关联查询语句来替代 4.or的查询尽量用union或union all来 阅读全文
posted @ 2020-09-21 21:49 幽默de程序员 阅读(192) 评论(0) 推荐(0) 编辑
摘要: 常见的有MyISAM(全表锁)、Innodb(行级锁)、Memory(全表锁)、MERGE(一组MYISAM表的组合) 阅读全文
posted @ 2020-09-21 21:45 幽默de程序员 阅读(55) 评论(0) 推荐(0) 编辑
摘要: 1.InnoDB支持事务,而MyISAM不支持事务 2.InnoDB支持外键,而MyISAM不支持外键 3.InnoDB是聚集索引,而MyISAM是非聚集索引 4.InnoDB不保存表的具体行数,而MyISAM用一个变量保存了整个表的行数。 5.InnoDB不支持全文索引,而MyISAM支持全文索引 阅读全文
posted @ 2020-09-21 21:42 幽默de程序员 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 数据库的事务具有四个特性。 1.原子性(atomic) 指数据库不可再分,不可再缩小的特性。类似于列不可再分这个特性。 2.隔离性(isolation) 两个事务之间相互隔离,互不打扰。 3.一致性(consistent) 结果不会出现幻读,不可重复读。 4.持久性(durabiliy) 操作会保存 阅读全文
posted @ 2020-09-21 21:36 幽默de程序员 阅读(90) 评论(0) 推荐(0) 编辑
摘要: 并发控制 保证一个用户的操作不会对另一个用户的操作造成影响。 悲观锁, 这是一种对数据的修改持有悲观态度的并发控制方式。 悲观锁有两种,分别是排他锁和共享锁。 排他锁【exclusive locks】,也叫写锁(x锁) 共享锁【shared locks】,也叫读锁(s锁) 乐观锁, 有两种实现: 1 阅读全文
posted @ 2020-09-21 21:32 幽默de程序员 阅读(125) 评论(0) 推荐(0) 编辑