发表于: 2017-11-28 19:48:38

3 689


第一阶段——数据库及java基础学习

本日任务:

1,下载并安装了MySQL5.5;


2,下载并安装了Navicat,连接成功。

3,对修真院线下报名贴进行了业务模型分析


4 . 创建数据库表


创建数据库的标准格式:


创建表:定义表的结构(有哪些列,每一列存储什么类型的数据)

create table 表名(

    列名   类型    约束,

    列名   类型    约束,

    列名   类型    约束

);




create table t_xiuzhenyuan(

id BIGINT auto_increment,

name varchar(20),

QQ VARCHAR(20),

class vARCHAR(20),

create_at date,

update_at VARCHAR(20),

sin VARCHAR(20),

hope VARCHAR(20),

leader VARCHAR(20),

teacher VARCHAR(20),

senior VARCHAR(20),

l_from VARCHAR(20)

)


后来发现不能存储长url,查询后发现了longText,可以存储长数据

CREATE TABLE `t_xiuzhenyuan` (

  `id` bigint(20) unsigned DEFAULT NULL,

  `name` varchar(20) DEFAULT NULL,

  `QQ` varchar(20) DEFAULT NULL,

  `class` varchar(20) DEFAULT NULL,

  `create_at` date DEFAULT NULL,

  `update_at` varchar(20) DEFAULT NULL,

  `url` longtext,

  `hope` varchar(20) DEFAULT NULL,

  `leader` varchar(20) DEFAULT NULL,

  `teacher` varchar(20) DEFAULT NULL,

  `senior` varchar(20) DEFAULT NULL,

  `l_from` varchar(20) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;

修改

存储url方便了,longText可以存储4G的资料


5.  增删改查


5.1 插入数据


INSERT INTO `t_xiuzhenyuan` (`id`, `name`, `QQ`, `class`, `create_at`, `update_at`, `url`, `hope`, `senior`, `l_from`) VALUES ('2641', '曲艳行', '3169119846', 'JAVA工程师', '2017-11-22', '燕山大学', 'http://www.jnshu.com/daily/40038?dailyType=others&total=8&page=1&uid=18143&sort=0&orderBy=3', '努力努力再努力!', '郑州分院王鹏举', '知乎')



使用Navicat 查看操作sql



5.2  查询这条记录-姓名

SELECT * from t_xiuzhenyuan WHERE name='曲艳行'

5.3 修改报名宣言改成老大最帅-ddl

update t_xiuzhenyuan set hope="老大最帅" where id=2641





6. 导出sql

运行sql




7 修改id,改为自增主键

DROP TABLE IF EXISTS `t_xiuzhenyuan`;

CREATE TABLE `t_xiuzhenyuan` (

  ID BIGINT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,

  `name` varchar(20) DEFAULT NULL,

  `QQ` varchar(20) DEFAULT NULL,

  `class` varchar(20) DEFAULT NULL,

  `create_at` date DEFAULT NULL,

  `update_at` varchar(20) DEFAULT NULL,

  `url` longtext,

  `hope` varchar(20) DEFAULT NULL,

  `leader` varchar(20) DEFAULT NULL,

  `teacher` varchar(20) DEFAULT NULL,

  `senior` varchar(20) DEFAULT NULL,

  `l_from` varchar(20) DEFAULT NULL

) ENGINE=InnoDB DEFAULT CHARSET=utf8;


亲测可用



8 索引:

首先,我们要明白什么是索引

索引可以理解是目录,比如查字典,我们会把所有的单词按照英文字母排序,OK,这样查询速度就快了很多


索引的作用就是快速定位

索引是:

一个数据库对象

用来加速对表的查询

通过使用快速路径访问方法快速定位数据,减少了磁盘的I/O

与表独立存放

由数据库自动维护


比如我们查询1个公司中,工资大于2K的员工



首先根据索引加以排序,再倒序查询,这个排序的工作在数据库添加完数据的时候就会进行了。

使用navicat可以右键编辑表进行添加索引





8.1 索引案例

创建简单索引


在表上创建一个简单的索引。允许使用重复的值:



创建唯一索引

具体参考http://www.w3school.com.cn/sql/sql_create_index.asp


8.2 案例 -给姓名索引


CREATE INDEX PersonIndex

ON t_xiuzhenyuan (name) 



如图所示,索引弄好了



9 测试执行速度


这个暂时出了问题




本日总结:

基本功还有缺陷



明日计划

 完成任务1的下半部分,争取全弄完,好好复习sql




返回列表 返回列表
评论

    分享到