错了,你是要批量导入吗?
需要下载poi包
首先要先把文件转变成数据流
InputStream
,然后
try
{
HSSFWorkbook
workbook
=
new
HSSFWorkbook(is);
HSSFSheet
sheet=workbookgetSheetAt(0);
}
catch(
Exception
e)
{
eprintStackTrace();
}
if(sheet==null)
{
close(streamIn);
return
null;
}
int
rows
=
sheetgetPhysicalNumberOfRows();
if(rows<=1)
{
close(streamIn);
return
null;
}
HSSFRow
row
=null;
DecimalFormat
formatter=new
DecimalFormat("#");
for(int
r
=
1;r<
rows;r++)
{
}
遍历取出,并保存
sql语句导入mysql数据库乱码解决步骤如下:
1、首先要保证txt文件是用UTF8格式保存的,这里可以打开查看一下内容确认格式。
2、接着使用Navicat Premium连接上数据库查看数据表是UTF8格式的。
3、接着 查看数据库的格式,确保是UTF8。
4、继续查看 数据库中表的列也是UTF8格式。
5、查询表数据,先是空表没有一条数据。
6、把准备好的txt文件,导入到数据库,查看数据是否有乱码。
7、重新查询数据库查看刚刚导入进去的数据,没有乱码。
TIMESTAMP 不要指定长度
以下是正确的:
CREATE TABLE `act_evt_log` (
`LOG_NR_` BIGINT(20) NOT NULL AUTO_INCREMENT,
`TYPE_` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL,
`PROC_DEF_ID_` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL,
`PROC_INST_ID_` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL,
`EXECUTION_ID_` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL,
`TASK_ID_` VARCHAR(64) COLLATE utf8_bin DEFAULT NULL,
`TIME_STAMP_` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
`USER_ID_` VARCHAR(255) COLLATE utf8_bin DEFAULT NULL,
`DATA_` LONGBLOB,
`LOCK_OWNER_` VARCHAR(255) COLLATE utf8_bin DEFAULT NULL,
`LOCK_TIME_` TIMESTAMP(3) NULL DEFAULT NULL,
`IS_PROCESSED_` TINYINT(4) DEFAULT '0',
PRIMARY KEY (`LOG_NR_`)
) ENGINE=INNODB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;
mysql 导入数据库有2种方法,一种方法比较简单,直接使用navcat的运行sql文件,知道你的sql文件 直接导入就OK,但是本人导入的时候却出现错误,原因,现在也没搞清楚,第二种就是cmd 导入,这种方法有点复杂,本人也查看了网上的很多教程,发现讲的也不是很详细,所以以此博客来详细说明一下我的如何导入的,方便以后参考,好了现在开始介绍 cmd 导入sql文件方法;
第一步:首先,你必须把mysql 配置好,将myslql安装路径下的bin配置到系统环境变量的path下;
第二步:运行cmd,输入 : mysql -uroot -p 正确的话 应该是提示你输入密码,密码是你自己安装的时候设置的,如果你忘记了,那么重装吧;密码正确之后就进入了 mysql了 可以对 mysql 进行 *** 作了;
第三步:输入 use orderdish (orderdish是我创建的数据库,你要输入你需要导入的数据库名);enter之后会提示:database changed
第四步:输入 source c:\orderdishsql 利用source导入sql 文件,后面对应的是你需要导入的sql路径, 注意:\ 需要加上去;
如图,
另外,如果出现了中文乱码的话,就在 mysql -uroot -p密码 后面加上 --default-character-set=utf8 就好了,
例如:mysql -uroot -p123 --default-character-set=utf8
MYSQL数据库导出第一种利用空间商提供的PHPMYADMIN管理工具导出,这种较为简单,大家查一下资料这里就不多讲了第二种利用MYSQL安装时自带的mysqldump管理工具导出:1)左下角开始菜单-运行-CMD进入DOS命令行状态2)输入:CD D:/Program Files/MySQL/MySQL Server 50/binD:/Program Files/MySQL/MySQL Server 50/bin为你安装的MYSQL安装目录,/bin为mysqldump管理工具所有在的目录;3)导出语法为:mysqldump -h[hosname] -u[user_name] -p[password] --default-character-set=[char_set_name] [db_name] [save_path]例:然后输入:mysqldump -h119121211 -umysql-pmysql123--default-character-set=utf8 aspchina --skip-lock-tables d:/aspchina_netsql119121211为远程服务器IP,-umysql mysql为数据库用户名,-pmysql123 mysql123 为用户密码,set=utf8为导出MYSQL的编码格式,aspchina为要导出的数据库名,d:/aspchina_netsql 为导入到你本地的存放路径,aspchina_netsql你可以自由命名!MYSQL数据库导入如果MYSQL数据库小于2MB可以用mysqldump管理工具导入,如果大小2MB就不行了,因为空间商提供的PHPMYADMIN管理工具一般只能导入小于2MB的数据,这令一些使用MYSQL数据库的站长郁闷了!1)左下角开始菜单-运行-CMD进入DOS命令行状态2)D:/Program Files/MySQL/MySQL Server 50/bin为你安装的MYSQL安装目录,/bin为mysqldump管理工具所有在的目录;3)然后输入:mysql -h119121211 -uaspchina -paspchina123456 aspchina< d:/aspchina_netsql注释:aspchina_netsql,如果用户没有创建数据库的权限将不能导入aspchina_netsql数据库,否则spchina_netsql只能是多张表不然会出错,这点切记!
java连接mysql数据库jar包导入:
1将所有的jar包都是放到web工程lib目录下,mysql-connector-java-xx-binjar也是一样,把该JAR包拷贝到lib目录下即可
2用jdbc直接链接mysql代码如下
public static void main(String[] args) throws SQLException {
DriverManagerregisterDriver(new commysqljdbcDriver());
Connection conn = DriverManagergetConnection("jdbc:mysql://localhost:3306/day15", "root", "123456");
Systemoutprintln(conngetClass()getName());
Statement stmt = conncreateStatement();
ResultSet rs = stmtexecuteQuery("select id,name,password,email,birthday from users");
while (rsnext()) {
Systemoutprintln("-------------------------");
Systemoutprintln(rsgetObject("id"));
Systemoutprintln(rsgetObject("name"));
Systemoutprintln(rsgetObject("password"));
Systemoutprintln(rsgetObject("email"));
Systemoutprintln(rsgetObject("birthday"));
}
rsclose();
stmtclose();
connclose();
}
//根据excel文件,生成输入流
FileInputStream fis = new FileInputStream(new File("D:\\aaxlsx"));
//用输入流生成poi 对象,以读取excel内容
//excel2007以上用XSSFWorkbook,2003用HSSFWorkbook
Workbook workbook = new XSSFWorkbook(fis);
Sheet sheet = workbookgetSheetAt(0);//取第一个sheet
String str1 = sheetgetRow(0)getCell(0)getStringCellValue();//取第一行第一列字符值
//getDateCellValue();日期类型 getNumericCellValue()数字类型;getHyperlink()超链接 等等()
//接下来 选择性插入数据库吧,明白
以上就是关于把EXCEL文件导入到MYSQL数据库的java类代码全部的内容,包括:把EXCEL文件导入到MYSQL数据库的java类代码、sql语句导入mysql数据库乱码怎么解决、MySQL数据库导入问题,同样一段指令,有一台电脑能够顺利运行,另外一条就会报错,求解答。代码如下:等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)