匯入csv檔案到資料庫

2022-01-29 08:02:23 字數 3780 閱讀 1557

csv:逗號分隔值(comma-separated values,csv,有時也稱為字元分隔值,因為分隔字元也可以不是逗號),其檔案以純文字形式儲存**資料(數字和文字)。純文字意味著該檔案是乙個字串行,不含必須像二進位制數字那樣被解讀的資料。csv檔案由任意數目的記錄組成,記錄間以某種換行符分隔;每條記錄由欄位

組成,欄位間的分隔符是其它字元或字串,最常見的是逗號或製表符。通常,所有記錄都有完全相同的字段序列。

這是使用記事本開啟大乙個csv檔案:

另外,csv也可以像excel那樣作為乙個**的形式開啟:

當然,首要先要乙個前提,你要新增到資料庫的資料,必須和資料庫中標的字段互相對應:

注意:這裡我故意將**中某些字段沒有輸入資料,尤其是**的第五行,主鍵沒有,所以,這個是不能插入到資料中的,我們將在後台進行判斷。

下面開始**:(資料庫連線部分省略)

1

public

static

void main(string args) throws

ioexception

14 string fields = new

string[collumnum];

15 fields = line.split(",");

16if (fields.length == 7) else

22 user.setid(integer.parseint(fields[0]));

23if (fields[1] == null || fields[1].equals(""))

24 user.setname(null

);25

else

26 user.setname(fields[1]);

27if (fields[2] == null || fields[2].equals(""))

28 user.setpassword(null

);29

else

30 user.setpassword(fields[2]);

31if (fields[3] == null || fields[3].equals(""))

32 user.setnickname(null

);33

else

34 user.setnickname(fields[3]);

35if (fields[4] == null || fields[4].equals(""))36;

37else

38 user.setage(integer.parseint(fields[4]));

39if (fields[5] == null || fields[5].equals(""))

40 user.setgender(null

);41

else

42 user.setgender(fields[5]);

43if (fields[6] == null || fields[6].equals(""))

44 user.setaddress(null

);45

else

46 user.setaddress(fields[6]);

47 addtodb(user); //

新增到資料庫

48 } else else

54 user.setid(integer.parseint(fields[0]));

55if (fields[1] == null || fields[1].equals(""))

56 user.setname(null

);57

else

58 user.setname(fields[1]);

59if (fields[2] == null || fields[2].equals(""))

60 user.setpassword(null

);61

else

62 user.setpassword(fields[2]);

63if (fields[3] == null || fields[3].equals(""))

64 user.setnickname(null

);65

else

66 user.setnickname(fields[3]);

67if (fields[4] == null || fields[4].equals(""))68;

69else

70 user.setage(integer.parseint(fields[4]));

71if (fields[5] == null || fields[5].equals(""))

72 user.setgender(null

);73

else

74 user.setgender(fields[5]);

75 addtodb(user); //

新增到資料庫76}

77}78br.close();

79 system.out.println("**************錄入完畢**************");

80 }

1

/**2

* 向資料庫中新增記錄3*

4* @param

user5*/

6private

static

void

addtodb(user user) catch

(exception e)

27 }

1

/**2

* 判斷資料庫中是否有該條記錄3*

4* @param

user5*

@return6*/

7private

static

boolean

isrepeat(user user) catch

(exception e)

22return

false

;23 }

匯入 csv檔案到mysql資料庫

首先通過如下命令獲取到mysql的secure file priv的值 show variables like secure secure file priv 的值是在對mysql匯入匯出csv檔案時的路徑,mysql的檔案只能匯入匯出到此路徑,我的的mysql資料庫的 secure file pr...

CSV檔案匯入資料庫

region 讀取csv檔案返回dataset 讀取csv檔案返回dataset csv內容 public dataset csv catch finally endregion 寫入資料庫源 此方法是原始檔內容中的例必須和要匯入的表的例數一至,且資料格式一至 using system using ...

將CSV檔案匯入到hive資料庫

將csv檔案匯入hive後出現了所有的字段只顯示在新建的表的第乙個欄位中,後面的字段全是null.出現這種的原因是hive以行分隔資料,需要修改為按逗號 進行分隔讀取,具體操作如下,首先在hive中建立自己的table,並且設定以逗號分隔。create table ip ip varchar 30 ...