MySQL数据导入

MySQL中数据导入可以使用LOAD DATA INFILE方法或者mysqlimport方法:
要想在开始—>命令提示符中直接使用mysql或者mysqlimport等 当然要先配置下环境变量:
找到你的MySQL安装目录中的bin目录:例如我的就是C:\Program Files\MySQL\MySQL Server 5.1\bin
在我的电脑->右键属性中->高级选项->环境变量中在path的键值后加上C:\Program Files\MySQL\MySQL Server 5.1\bin。
这样就配置好了,我们就可以运行—>cmd->运行mysql了。
为验证是否正常运行:键入:mysql --version 回车 应该显示出mysql的版本信息。
下面就来讲解下数据导入吧
一 mysqlimport
这个工具位于:C:\Program Files\MySQL\MySQL Server 5.1\bin\mysqlimport
先来个例子,这是在Java中使用mysqlimport的常用方法
String mysqlimport = "mysqlimport " + "-hlocalhost -u" + prop("user") + " -p" + prop("password") + " " +
"--fields-terminated-by=, " +
"--fields-enclosed-by=\\' " +
"--lines-terminated-by=\\r\\n " +
prop("database") + " " +
"--local " +
newFile;
这个String呢说的就是把一条以逗号分隔的包含在单引号的数据导入表中(这里只是创建了表结构),注意呀,表名必须要与文件名一致。
那么在Eclipse等开发工具中怎么执行这条语句呢?也就是下面代码的第一句了
Process p = Runtime.getRuntime().exec(mysqlimport);
int returnValue = p.waitFor();
if (returnValue != 0) {
StringBuilder sb = new StringBuilder();
BufferedReader br = new BufferedReader(new InputStreamReader(p.getErrorStream()));
String tmp;
while((tmp = br.readLine()) != null) {
sb.append(tmp).append("\r\n");
}
System.out.println(sb.toString());
}

在mysql控制台中如何执行mysqlimport俺就不多说了,这个网上资料很多,参考资料也很多
二 load data infile
这个呢很简单 略 呵呵
最后提供一个表结构的例子:
createSql = "CREATE TABLE IF NOT EXISTS " + "`" + tmp_name + "`("
+ "`id` INTEGER NOT NULL AUTO_INCREMENT,"
+ "`ip` VARCHAR(17) NOT NULL, "
+ "`time` TIMESTAMP NOT NULL,"
+ "`dm` VARCHAR(20) NOT NULL," + "`vn` INT(8) NOT NULL,"
+ "`ln` INT(4) NOT NULL," + "`uid` INT(10) NOT NULL,"
+ "`fid` VARCHAR(40)," + "`browser` VARCHAR(15),"
+ "`action` VARCHAR(6)," + "`iswowformat` VARCHAR(7),"
+ "PRIMARY KEY (`id`)" + ") " + "ENGINE = MyISAM "
+ "default CHARSET=`utf8`" + ";";

你可能感兴趣的:(eclipse,数据结构,C++,c,mysql)