发表于: 2018-03-22 22:56:16

1 894


今天完成的事情:

任务1.4 这是我设计出来的报名帖业务表,用的Excel文档

跟几位师兄们对比一下,我发现他们都上手很快啊,不得不说,我目前还用不来navicat和mysql,他们都是直接用navicat和mysql设计的表格,然后我就开始去百度研究这两个东西了。

任务1.5 百度了一下怎么用navicat设计mysql数据库,按照指示,我完成了表格新建,但是有一个问题,任务中要求:数据库的每一个表中都要有三个基本的字段,ID(自增Long),create_at,update_at(所有的时间都用Long)。看到有点懵,不懂什么意思,而且在类型里面也找不出Long这个东西,后来问了一下群里的师兄,他们叫我查一下mysql和Java对应数据类型,百度看了一会儿,我才知道这个任务的意思,就是要我创建表格,然后要包含ID、create_at和update_at这三个字段,其中ID要用自增型,把他设定主键。下面是最开始设计的数据库表:

然后看了一下报名帖业务表,我又加上了Name、QQ、Xiuzhen_type、School_Number、Daily_link、Declaration这些字段。

任务1.6 从报名贴中找一条最近报名的师弟,用Mysql插入这条数据,并能够根据姓名查出来这条记录。

老老实实来,我去报名帖力找了一下最近报名的师弟(我应该叫师兄吧),找到了找到了!但是用Mysql插入这条数据,我tm哪会啊!我安装mysql的时候,安装好了桌面什么都没有,我怎么知道怎么搞!好吧,继续百度,原来这玩意儿长得跟cmd差不多啊,于是我就找到了他。然后我继续百度怎么用mysql插入数据库表,我找到了一个叫“mysql菜鸟教程”的网页,里面有关于mysql使用的语法。二话不说,做任务要紧,我直接找到了插入数据那一块,看了一下代码

INSERT INTO table_name ( field1, field2,...fieldN )

    VALUES
( value1, value2,...valueN );

恩,知道了,table_name改成我建立的表格的名字,field1、field2....改成我要插入的那个字段的名字、value1、value2......改成我要插入的内容。OK,分分钟搞定,点回车,哈哈!什么都没有!然后检查一遍,重新手动输入,继续回车,还是什么都没有!我又去看原文,发现自己少打了一个分号!好吧,我把分号加上,然后出来了一长串ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server.....之类的话。我再检查一遍插入的内容,发现create_at和update_at的类型设置错了,修改好之后,重新输入了一遍代码,结果出来了:

yes!yes!看到这句话我就知道成功了,点开navicat里面原先创建的表格,果然插入了我要的内容。

好吧,我把剩下的字段补全如图

excuse me!我要的是插在第一行啊,你这样搞要乱套的!尴尬之余,继续百度,看了别人的回答之后,我知道要用update更新,而不是插入了。那就更新吧,看下面:

试了很多,改了很多次,最终还是成功了。接着再把多的第二行ID=2的删掉吧,下面直接放结果:

继续根据姓名查询这条记录,好的select QQ,Xiuzhen_type,School_Number,Daily_link,Declaration,Create_at,Update_at from chengdubaoming where Name="晋良金";结果如下,任务完成。

任务1.7分别用Navciat和Sql语句去将本条数据记录的报名宣言改成老大最帅。做完刚刚的之后,这个就太简单了,因为我刚刚学了update这个用法,任务直接就算完成了吧。

任务1.8将表导出成Sql文件,并使用navciat和Sql分别尝试删除此条数据,并用之前备份的Sql恢复。

先抱怨一句,这个任务坑了我好久!mmp!首先,用navical导出Sql文件,这个挺简单,右键数据库,转储SQL文件就搞定了。然后我在navicat里删除了刚刚的数据库表,进行navicat的导入,点到数据库里面的表,右键运行SQL文件,选择目录,就搞定了。做完一半,那么问题来了!用sql删除和恢复数据库表,接到任务我就在想,我用sql把数据库表删除了,万一恢复不了怎么办,是不是得先备份,好吧,那就开始寻找备份方法。可以说百度上面给出了好几种方法,比如这个链接里的https://www.yiibai.com/mysql/how-to-backup-database-using-mysqldump.html还有这个http://www.runoob.com/mysql/mysql-database-export.html还有这个http://www.runoob.com/mysql/mysql-database-export.html,反正我看了好几种,里面介绍的方法我都在MySQL里试了,一直都不行.......反正就是一直都有错,而且我感觉这些方法都各不相同,难道在mysql语言里面,有几种数据库表的备份方法吗?这是我的一个疑问。最后,我去爱奇艺里面搜了一下备份和恢复的视频,我发现他是用cmd进行备份的......尴尬的一比啊。然后我果断按照下面这个链接里面的方法开始进行备份https://blog.csdn.net/Revered_Mars/article/details/78614610?locationNum=5&fps=1。确实好用,分分钟就备份好,和原来navicat备份的sql文件一样。然后我就打开mysql。输入代码use baomingbiao; drop tables chengdubaoming;刷新一下navicat,OK,数据库表成功删除,然后输入代码mysql>use baomingbiao;source chengdubaoming.sql;回车,现实下图结果,刷新一下,成功恢复数据库表。图太长,没截完,但是又两个warnings。

好了这个任务完成,今天就做了这些。


明天的计划:明天有半天时间有另外的安排,就计划把任务1.9——1.11完成吧,先做完下载java7、Maven3和Eclipse之前的任务。其实Eclipse早就下好了,正在用,后面应该好一些吧。


遇到的问题:其实今天还是问题挺多的,首先前面说的mysql和Java对应数据类型,这个不知道的话,在建立报名业务表的时候,类型那里真不知道选哪个。自增的ID,插入一行就会加一,即使把前面的1、2行删除了,第三行的ID:3是不会自动变成1的,要手动修改。还有插入和更新是有区别的。后面在备份和恢复的时候,运行cmd要点以管理员身份运行,不然会出现拒绝访问的情况,导致数据无法备份。还有一个问题,写代码的是后续,最好检查一遍代码是不是某个地方写错了,再回车,有时候一个不小心的错误,却花很长时间才查出来。最后一个问题就是,数据库备份和恢复的方法或者代码到底有几种?


收获:从昨天对navicat和mysql的一脸懵逼,到今天的有点头绪,Mysql是数据库,Navicat是图形化管理数据库的,算是一种收获吧。知道了书上的java代码和数据库里面的代码是有差别的。对数据库语言进行了了解和学习。



返回列表 返回列表
评论

    分享到