erbi_lucifer吧 关注:406贴子:3,325
  • 12回复贴,共1

简单数据整理分析(一)

只看楼主收藏回复




1楼2013-06-07 19:49回复

    一、需要用到的程序
    1、 UltraEdit:简称UE,文本编辑用,几百M上G的文本用记事本打不开,但是UE可以轻松处理。
    2、 SQL Server Management Studio Express:可视化的MSSQL数据库操作程序。
    3、 SQLyog:可视化的MYSQL数据库操作程序。
    4、 Microsoft Access:用于操作mdb和accdb数据库。
    5、 Microsoft Excel:操作xls表格。
    6、 DTSWizard:MSSQL自带的“导入和导出数据”程序。
    7、 浏览器:处理html数据。8、 记事本和其他自己编写的小程序。


    3楼2013-06-07 19:52
    回复

      二、数据信息的储存类型
      根据拖库方式的不同,常见的库类型有:
      ·sql类型文件:直接在数据库中导出(多为MYSQL数据库),有建表,插入数据的语句,这种最好了,直接使用SQLyog 连接MYSQL,然后直接导入执行即可。
      ·mdb类型文件和accdb文件:可以用Access打开(几G大都可以正常打开),然后选择有用的表进行导出。导出的时候,类型选择文本,间隔符最好自定义一些数据中少用到的(如‘$’)字符。这样子导出的数据可以使用DTSWizard导入到MSSQL中。
      .csv 类型或txt类型文件:可以说是最喜欢,有可能是最麻烦的。如果遇到格式整齐的,可以直接使用DTSWizard导入数据,但是往往在拖库的时候会有些差错,数据往往会有些错误,需要自己进行处理。
      .xls:excel打开,另存为csv文件,然后DTSWizard导入到MSSQL中。
      .html:最郁闷的了,需要从html提取数据(特别是每一条数据是一个文件的),可以自己编写程序解析。
      .MDF和.LDF:MSSQL数据库和日志文件,直接在SQLServer Management Studio Express上附加数据库进行导入即可。
      MYD,MYI,frm,:MYSQL的数据表,找到MYSQL安装目录下data文件夹里面对应的数据库名称文件夹,如:mysql-5.5.25-winx64\data\test。把数据表复制进这个文件夹即可,刷新后,就可以在SQLyog中对应的数据库下找到复制进去的数据表(例子是test下的)。
      .log:大多数为sqlmap进行拖库时的日志文件,拖库完成后中断后会将结果生成csv文件和拖库过程记录的log文件,csv文件是自动整理后的结果,如果入手的数据是那个log文件,那么需要自己分析log文件,去掉执行过程,去掉重复数据,去掉无用数据等。


      4楼2013-06-07 19:53
      回复

        三、MDB到文本数据—-001job


        5楼2013-06-07 19:55
        回复

          (1)使用Microsoft Access打开数据库,如果数据库加密了,可以考虑百度一下mdb数据库解密,有很多的解密工具(如果不放心,可以自己编写)。

          (2)在需要导出的数据表右击,选择导出—文本文件。


          6楼2013-06-07 19:57
          回复

            3)弹出导出对话框,选择保存的文件名。
            图片来自:堕erbi的百度相册

            (4)选择带分隔符。

            (5)可以使用默认的逗号作为分隔符,也可以自己定义,文本识别符为双引号。如果设置了文本识别符,那么如果使用后面我们介绍的DTSWizard对文本导入数据库的操作时需要设置“文本限定符”选项为双引号‘”’,否则导入数据库的数据全部都会带着双引号。


            通过百度相册上传7楼2013-06-07 19:59
            回复

              目标数据:

              数据如:
              109825583$zhutingtingbb@sina.com$朱婷婷$1985$*和谐*$*和谐*$210037$南京林业大学4栋523室$JR098255839R90000005000$<COMPANY_NAME>,<JOB_TITLE>,<COMPANY_INDUSTRY>,<JOB_TYPE>,<JOB_SUBTYPE>,,<MAJOR_NAME>1,环境艺术设计
              从mdb数据库中导出的数据,以’$’字符作为间隔,可以直接使用DTSWizard进行数据的导入。


              10楼2013-06-07 20:01
              回复

                1)打开DTSWizard,选择“平面文件源”:
                图片来自:堕erbi的百度相册

                (2)选择文件,设置文件的编码格式。如果遇到utf-8编码的文件(常见到),需要更改代码页选项为 utf-8,否则中文会出现乱码。

                (3)点击“列”选项。输入列分隔符’S’,然后刷新列即可。如果你在处理其他数据的时候,预览的列和预算的不一样,可以点击“重置列”进行重置。或重新输入分隔符然后刷新列。

                (4)点击“高级”选项,设置每一列的类型和大小,这个很重要,默认的是大小为50的字符串,如果数据中有比50长的数据那么在导入的时候会发生错误。
                于是我们修改每一列的数据类型和长度,如第七列是地址,我们分配大小为250,最后一列需要很多数据,我们分配类型为文本流。


                通过百度相册上传11楼2013-06-07 20:04
                收起回复

                  5)下一步,选择服务器(这里是本机)和数据库名称,然后下一步。

                  (6)编辑映射。在这里会把你导入的文件的名称作为表名,如果数据库中不存在这张表,那么会新建表,如果存在,会选择“向目标表增加行”。在这里,你可以选择需要映射的列,不需要的列你可以在“目标”栏目选择“忽略”。

                  (7)设置全局出错处理:

                  (8)然后一直下一步,直到点击“完成”开始导入数据。接着是漫长的等待,数据越多越久。如果执行中有错误,你可以在“报告”中查看(其实出现错误是很经常出现的)。


                  12楼2013-06-08 16:24
                  回复

                    已经导入的数据:


                    13楼2013-06-08 16:24
                    回复

                      本文的PDF文档+相关程序(不包括信息数据) 已经上传115网盘,网盘传送门、用户名与密码见:
                      http://tieba.baidu.com/p/1839536765
                      目录:
                      /【简单数据分析处理】/简单数据分析处理.zip


                      14楼2013-06-08 16:32
                      回复

                        >>
                        >> to be continue……
                            / \./ \/\_   I Hand You
                          __{^\_ _}_  ) }/^\    A Rose...
                         / /\_/^\._}_/ // /
                        ( (__{(@)}\__}.//_/__A___A______A_______A______A____
                         \__/{/(_)\_} )\\ \\---v----V-----V--Y----v---Y-----
                          (  (__)_)_/ )\ \>
                        \__/   \__/\/\/
                            \__,--'    时间:2013年6月8日16:32:49


                        15楼2013-06-08 16:32
                        回复