KDD数据导入sqlserver2005数据库

请先读一下这篇文章的内容:http://wenku.baidu.com/link?url=hFpkoQMUT-I4YxR6bLQeia45H-Qv4jz3VTrxpog_zXOohoOSLfdnxc7Jagj1k04KeReerCLAaZ8n8-YMXQPmsG5MJPS6aUNSY-Fr8EcqhKC

在这篇文章中,作者已经写的很好,但本人在将数据导入sqlserver的过程中,没有写那么复杂的程序。但实现了导入数据这个功能。下面,跟大家一一说来。

我用的开发平台是MyEclipse,但从网上查阅的资料来看,用Eclipse操作过程好像是一样的。

1、数据库准备: sqlserver数据库中

(1)创建dataitems数据库:

数据库—>新建数据库—>数据库名称:dataitems

(2)创建表dataitem:

新建查询,复制以下代码到新建的.sql文件中,并按F5执行。

create table dataitem(
com1 varchar(50) not null,
com2 varchar(50) not null,
com3 varchar(50) not null,
com4 varchar(50) not null,
com5 varchar(50) not null,
com6 varchar(50) not null,
com7 varchar(50) not null,
com8 varchar(50) not null,
com9 varchar(50) not null,
com10 varchar(50) not null,
com11 varchar(50) not null,
com12 varchar(50) not null,
com13 varchar(50) not null,
com14 varchar(50) not null,
com15 varchar(50) not null,
com16 varchar(50) not null,
com17 varchar(50) not null,
com18 varchar(50) not null,
com19 varchar(50) not null,
com20 varchar(50) not null,
com21 varchar(50) not null,
com22 varchar(50) not null,
com23 varchar(50) not null,
com24 varchar(50) not null,
com25 varchar(50) not null,
com26 varchar(50) not null,
com27 varchar(50) not null,
com28 varchar(50) not null,
com29 varchar(50) not null,
com30 varchar(50) not null,
com31 varchar(50) not null,
com32 varchar(50) not null,
com33 varchar(50) not null,
com34 varchar(50) not null,
com35 varchar(50) not null,
com36 varchar(50) not null,
com37 varchar(50) not null,
com38 varchar(50) not null,
com39 varchar(50) not null,
com40 varchar(50) not null,
com41 varchar(50) not null,
com42 varchar(50) not null
)

 至此,我们创建了dataitems数据库,并创建了dataitem表。

2、打开MyEclipse—>File—>New—>Java Project,在Project name里填写项目名称,我写的是trust—>确定

3、右键单击trust项目下面的src—>New—>Package,在name里填写包名称,我写的是db.xuss—>确定

4、右键单击db.xuss包—>New—>Class,在name里填写包名称,我写的是lala—>确定

5、打开lala.java,将下面的代码复制过去(注意如果用户名、密码、端口跟你的不符,要修改成你自己的):

package db.xuss;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.sql.*;

public class lala {
	public static void main(String[] args) throws Exception{

    try
    {
       	File f=new File("E:/kddcup.data");
    	System.out.println("kddcup.data exits\t"+f.exists());
    	BufferedReader br=new BufferedReader(new FileReader(f));
    	File f1=new File("E:/data1.txt");
    	BufferedWriter bw=new BufferedWriter(new FileWriter(f1));
    	String s = br.readLine();

    	String driverName = "com.microsoft.sqlserver.jdbc.SQLServerDriver";  //加载JDBC驱动
    	String dbURL = "jdbc:sqlserver://localhost:1433; DatabaseName=dataitems";  //连接服务器和数据库test
    	String userName = "sa";  //默认用户名
    	String userPwd = "123456";  //密码

    	Connection conn=null;
    	try {
    		Class.forName(driverName);
    		conn = DriverManager.getConnection(dbURL, userName, userPwd);
    		System.out.println("Connection Successful!");  //如果连接成功 控制台输出Connection Successful!
    	} catch (Exception e) {
    		e.printStackTrace();
    	}

    		String[] strs;
    		String com1=null;
    		String com2=null;
    		String com3=null;
    		String com4=null;
    		String com5=null;
    		String com6=null;
    		String com7=null;
    		String com8=null;
    		String com9=null;
    		String com10=null;
    		String com11=null;
    		String com12=null;
    		String com13=null;
    		String com14=null;
    		String com15=null;
    		String com16=null;
    		String com17=null;
    		String com18=null;
    		String com19=null;
    		String com20=null;
    		String com21=null;
    		String com22=null;
    		String com23=null;
    		String com24=null;
    		String com25=null;
    		String com26=null;
    		String com27=null;
    		String com28=null;
    		String com29=null;
    		String com30=null;
    		String com31=null;
    		String com32=null;
    		String com33=null;
    		String com34=null;
    		String com35=null;
    		String com36=null;
    		String com37=null;
    		String com38=null;
    		String com39=null;
    		String com40=null;
    		String com41=null;
    		String com42=null;
    	  PreparedStatement pst = null;
    	  String sql = "insert into dataitem values(?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)";

    	  while(s!=null){
    		  strs=s.split(",");
    			com1=strs[0];
    			com2=strs[1];
    			com3=strs[2];
    			com4=strs[3];
    			com5=strs[4];
    			com6=strs[5];
    			com7=strs[6];
    			com8=strs[7];
    			com9=strs[8];
    			com10=strs[9];
    			com11=strs[10];
    			com12=strs[11];
    			com13=strs[12];
    			com14=strs[13];
    			com15=strs[14];
    			com16=strs[15];
    			com17=strs[16];
    			com18=strs[17];
    			com19=strs[18];
    			com20=strs[19];
    			com21=strs[20];
    			com22=strs[21];
    			com23=strs[22];
    			com24=strs[23];
    			com25=strs[24];
    			com26=strs[25];
    			com27=strs[26];
    			com28=strs[27];
    			com29=strs[28];
    			com30=strs[29];
    			com31=strs[30];
    			com32=strs[31];
    			com33=strs[32];
    			com34=strs[33];
    			com35=strs[34];
    			com36=strs[35];
    			com37=strs[36];
    			com38=strs[37];
    			com39=strs[38];
    			com40=strs[39];
    			com41=strs[40];
    			com42=strs[41].replace(".","");

    		    pst = conn.prepareStatement(sql);
    		    pst.setString(1,com1);
    			pst.setString(2,com2);
    			pst.setString(3,com3);
    			pst.setString(4,com4);
    			pst.setString(5,com5);
    			pst.setString(6,com6);
    			pst.setString(7,com7);
    			pst.setString(8,com8);
    			pst.setString(9,com9);
    			pst.setString(10,com10);
    			pst.setString(11,com11);
    			pst.setString(12,com12);
    			pst.setString(13,com13);
    			pst.setString(14,com14);
    			pst.setString(15,com15);
    			pst.setString(16,com16);
    			pst.setString(17,com17);
    			pst.setString(18,com18);
    			pst.setString(19,com19);
    			pst.setString(20,com20);
    			pst.setString(21,com21);
    			pst.setString(22,com22);
    			pst.setString(23,com23);
    			pst.setString(24,com24);
    			pst.setString(25,com25);
    			pst.setString(26,com26);
    			pst.setString(27,com27);
    			pst.setString(28,com28);
    			pst.setString(29,com29);
    			pst.setString(30,com30);
    			pst.setString(31,com31);
    			pst.setString(32,com32);
    			pst.setString(33,com33);
    			pst.setString(34,com34);
    			pst.setString(35,com35);
    			pst.setString(36,com36);
    			pst.setString(37,com37);
    			pst.setString(38,com38);
    			pst.setString(39,com39);
    			pst.setString(40,com40);
    			pst.setString(41,com41);
    			pst.setString(42,com42);
    		  int row = pst.executeUpdate();
    		  pst.close();
    		  s = br.readLine();
    	  }
        conn.close();
    }catch (Exception ex)
    {
      System.out.println("Error : " + ex.toString());
    }
  }
}

  代码写的很粗糙,请各位不要介意。

5、现在还不能运行,因为越少jar包。下面要把jar包引进来。

你如果没有链接sqlserver2005的jar包,需要先下载,可以从我的CSDN资源里免费下载:http://download.csdn.net/detail/thisnameokbu/8397285

(1)下载后,先解压。解压后生成sqljdbc_1.1.1501.101_chs文件夹,将该文件夹下的sqljdbc_1.1文件夹复制到C:\temp下。

(2)然后我们需要设置“环境变量”。(我的电脑操作系统时winxp)设置方法:我的电脑—>右键“属性”—>高级—>环境变量—>系统变量中找到classpath变量,双击进行编辑,在最后添加 ;C:\temp\sqljdbc_1.1\chs\sqljdbc.jar(记住classpath中各个路径之间都必须用;隔开!!!),重启电脑(不过重启电脑之前,需要先记录下这个博客的url。。。-_-||)

(3)回到MyEclipse,我们需要把jar包添加进来。Project—>Properties—>Java Buid Path—>Libraries—>Add External Jar—>找到C:\temp\sqljdbc_1.1\chs\sqljdbc.jar选中—>OK

6、打开lala.java文件,点击下面所指示的标志,运行

Console控制台出现的信息如下图所示。数据导入数据库的时间会很久,需要耐心等待。等到箭头所致处变成灰色就说明程序已经执行完了。

导完数据后,dataitem表中一共有4898431行数据。可以通过sql语句:select count(*) as num from dataitem获得。如下图所示:

(如果还有什么不明白的地方,可以给我发邮件:[email protected])

时间: 2024-10-21 13:27:07

KDD数据导入sqlserver2005数据库的相关文章

excel数据导入导出数据库

第一种方法: 先把Excel另存为.csv格式文件,如test.csv,再编写一个insert.ctl 用sqlldr进行导入! insert.ctl内容如下: load data          --1.控制文件标识 infile ‘my.csv‘          --2.要输入的数据文件名为my.csv append into table "tbl_test"   --3.向表table_name中追加记录 fields terminated by ‘,‘          

将csv和txt 数据导入到数据库中

将文本数据导入到数据库中,最简单的选择是:Excel使用OpenSet,csv和txt 使用bulk insert来实现 1,使用OpenRowSet将Excel导入到数据库中 参考<OpenRowSet 用法> 2,使用bulk insert 将txt数据导入到数据库中,文本数据使用Tab分割Column,使用换行符分割row. --create staging table create table dbo.txt_staging ( col1 nvarchar(255), col2 nva

利用TOAD实现把EXCEL数据导入oracle数据库

利用TOAD实现把EXCEL数据导入oracle数据库 工具:   Toad11.7z(百度搜索,直接下载) 1.将Excel文件中某些字段导入到Oracle数据库的对应表 连接想要导入的数据库 ,然后Database->Import->Table Data打开了导入窗口,如下图   选择一个数据库表,点击Show Data按钮,可以显示表中的内容 其中schema 就是这张表的所属用户 Object type 就是 table Object name 就是表的名称 Commit mode 

将Excel数据导入mysql数据库的几种方法

将Excel数据导入mysql数据库的几种方法 “我的面试感悟”有奖征文大赛结果揭晓! 前几天需要将Excel表格中的数据导入到mysql数据库中,在网上查了半天,研究了半天,总结出以下几种方法,下面和大家分享一下: 一.用java来将Excel表格中的数据转到mysql中 这是我们用的第一种方法,就是在java找你感谢个类,然后这个类会将Excel表格中的数据存储到内存里,然后再从内存中读出来插入到数据库中,但是要 注意了,这里是存储到String[ ]数组里面,所以取出来的数据也是Strin

怎样把 excel 的数据导入到数据库里面去

1. 把 excel 另存为 .csv 格式 2. 用 Notepad 打开 .csv 文件, 第一行就是所有的字段 3. 创建表结构 create table yu_rt_01 as select Transaction_Id,Last_Update_Date,Last_Updated_By,Creation_Date,Created_By,Last_Update_Login,Request_Id,... ,Lcm_Shipment_Line_Id from rcv_transactions

java实现EXCEL数据导入到数据库中的格式问题的解决

之前作为项目甲方,加之java接触不多,在java web开发方面都是打下手的份. 对于EXCEL数据导入到数据库这个问题一直老是出现格式原因而导入失败也是未免惆怅,开发团队也是只说回去检查一下格式. 但是,每次导入的时候还会因为格式问题而惴惴不安,最近把代码拿来研究了一下,网上查了一下. 原来是从cell里取出数据后没有做格式匹配直接赋值导致的.因此,在取出数据写入数据库前做一下格式匹配就好了. SO FRUSTRATED BY THE PREVIOUS IGNORANCE! 1 //把EXC

Java版将EXCEL表数据导入到数据库中

1.采用第三方控件JXL实现 try { //实例化一个工作簿对象 Workbook workBook=Workbook.getWorkbook(new File("F://qzlx.xls")); //获取该工作表中的第一个工作表 Sheet sheet=workBook.getSheet(0); //获取该工作表的行数,以供下面循环使用 int rowSize=sheet.getRows(); for(int i=0;i<rowSize;i++) { //编号 String

数据从Excel数据导入到数据库的excel操作控件Spire.XLS for .NET

Spire.XLS for .NET控件是e-iceblue公司开发的一款支持对所有Excel格式类型文件进行操作的.NET 控件.它适用于任何类型的应用程序比如ASP.NET Web应用程序或者Windows桌面应用程序.Spire.XLS for .NET允许软件开发人员创建和管理Excel,而不需要安装Microsoft Excel或者Microsoft Office Excel.Spire.XLS for .NET和微软公司无隶属关系,也没有授权,赞助关系.相比Microsoft,Spi

代码执行批量Excel数据导入Oracle数据库

由于基于Oracle数据库上做开发,因此常常会需要把大量的Excel数据导入到Oracle数据库中,其实如果从事SqlServer数据库的开发,那么思路也是一样的,本文主要介绍如何导入Excel数据进入Oracle数据库的内容. 方法一: 1.准备数据:在excel中构造出需要的数据 2.将excel中的数据另存为文本文件(有制表符分隔的) 3.将新保存到文本文件中的数据导入到pl*sql中 在pl*sql中选择tools--text importer,在出现的窗口中选择Data from Te