Հոդվածների տեղեկատու
MySQLԻնչպե՞ս ներմուծել տվյալների աղյուսակը txt:ներմուծել sql ֆայլMySQL տվյալների բազաՁեռնարկներ
MySQL ներմուծման տվյալներ
MySQL-ով արտահանված տվյալները MySQL-ում ներմուծելու երկու պարզ եղանակ կա:
Ներմուծեք տվյալները՝ օգտագործելով LOAD DATA
LOAD DATA INFILE հայտարարությունը տրամադրվում է MySQL-ում՝ տվյալներ տեղադրելու համար:Հետևյալ օրինակը կկարդա dump.txt ֆայլը ընթացիկ գրացուցակից և ֆայլի տվյալները կտեղադրի ընթացիկ տվյալների բազայի mytbl աղյուսակում:
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl;
Եթե նշված է LOCAL հիմնաբառը, դա ցույց է տալիս, որ ֆայլը կարդացվում է հաճախորդի հոսթից՝ ըստ ճանապարհի:Եթե նշված չէ, ֆայլը կարդում է սերվերի ուղով:
Դուք կարող եք հստակորեն նշել սյունակի արժեքի սահմանազատիչներ և վերջի նշիչներ LOAD DATA հայտարարության մեջ, սակայն լռելյայն նշիչներն են.Դիրքավորումնիշեր և տողերի ընդմիջումներ:
FIELDS և LINES կետերի շարահյուսությունը նույնն է երկու հրամանների համար:Երկու դրույթներն էլ ընտրովի են, բայց եթե երկուսն էլ նշված են, FIELDS դրույթը պետք է հայտնվի LINES կետից առաջ:
Եթե օգտատերը նշում է FIELDS կետ, ապա դրա դրույթները (Ընդհատվող, [ԸՆԴՀԱՆՈՒՐ] ENCLOSED BY և ESCAPED BY) կամընտիր են, այնուամենայնիվ, օգտագործողը պետք է նշի դրանցից առնվազն մեկը:
mysql> LOAD DATA LOCAL INFILE 'dump.txt' INTO TABLE mytbl -> FIELDS TERMINATED BY ':' -> LINES TERMINATED BY '\r\n';
Լռելյայնորեն, LOAD DATA-ն տվյալները զետեղում է տվյալների ֆայլի սյունակների հերթականությամբ: Եթե տվյալների ֆայլի սյունակները անհամապատասխան են զետեղված աղյուսակի սյունակներին, ապա պետք է նշեք սյունակների հերթականությունը:
Օրինակ, տվյալների ֆայլում սյունակների կարգը a,b,c է, բայց տեղադրված աղյուսակում սյունակների կարգը b,c,a է, տվյալների ներմուծման շարահյուսությունը հետևյալն է.
mysql> LOAD DATA LOCAL INFILE 'dump.txt' -> INTO TABLE mytbl (b, c, a);
Ներմուծեք տվյալները mysqlimport-ի միջոցով
Mysqlimport հաճախորդը տրամադրում է հրամանի տող ինտերֆեյս LOAD DATA INFILEQL հայտարարության համար: Mysqlimport-ի տարբերակներից շատերը ուղղակիորեն համապատասխանում են LOAD DATA INFILE կետին:
Dump.txt ֆայլից տվյալները mytbl տվյալների աղյուսակ ներմուծելու համար կարող է օգտագործվել հետևյալ հրամանը.
$ mysqlimport -u root -p --local database_name dump.txt password *****
Mysqlimport հրամանը կարող է սահմանել ընտրանքներ նշված ձևաչափը սահմանելու համար: Հրամանի հայտարարության ձևաչափը հետևյալն է.
$ mysqlimport -u root -p --local --fields-terminated-by=":" \ --lines-terminated-by="\r\n" database_name dump.txt password *****
Օգտագործեք --columns տարբերակը mysqlimport հայտարարության մեջ՝ սյունակների հերթականությունը սահմանելու համար.
$ mysqlimport -u root -p --local --columns=b,c,a \ database_name dump.txt password *****
Ծանոթացում mysqlimport-ի ընդհանուր տարբերակներին
| Ադմինիստրատորները | 功能 |
|---|---|
| -d կամ - ջնջել | Ջնջեք տվյալների աղյուսակի բոլոր տեղեկությունները, նախքան նոր տվյալները տվյալների աղյուսակ ներմուծելը |
| -f կամ -ուժ | mysqlimport-ը կստիպի շարունակել տվյալների տեղադրումը, անկախ նրանից՝ սխալ է հանդիպում, թե ոչ |
| -i կամ - անտեսել | mysqlimport-ը բաց է թողնում կամ անտեսում տողերը, որոնք ունեն նույն եզակի բանալին, և ներմուծված ֆայլի տվյալները անտեսվում են: |
| -l կամ -կողպեք-սեղաններ | Աղյուսակը կողպված է նախքան տվյալների տեղադրումը, ինչը թույլ չի տալիս ազդել օգտվողների հարցումների և թարմացումների վրա, երբ դուք թարմացնում եք տվյալների բազան: |
| -r կամ -փոխարինել | Այս տարբերակը -i տարբերակի հակառակն է, այս տարբերակը կփոխարինի աղյուսակի նույն եզակի բանալիով գրառումները: |
| --fields-enclosed-by= char | Նշեք, թե ինչ կցել տվյալների գրառումը տեքստային ֆայլում:Շատ դեպքերում տվյալները կցվում են կրկնակի չակերտների մեջ:Տվյալները լռելյայնորեն ներառված չեն նիշերով: |
| --fields-terminated-by=char | Նշում է սահմանազատիչը յուրաքանչյուր տվյալների արժեքների միջև: Ժամանակահատվածով սահմանազատված ֆայլում սահմանազատիչը կետ է:Դուք կարող եք օգտագործել այս տարբերակը տվյալների միջև սահմանազատիչը նշելու համար:Լռելյայն սահմանազատիչը ներդիրի նիշն է (Tab) |
| --lines-terminated-by=str | Այս տարբերակը սահմանում է տող կամ նիշ, որը սահմանազատում է տվյալները տեքստային ֆայլի տողերի միջև:Լռելյայնորեն mysqlimport-ը օգտագործում է նոր տողը որպես տողերի բաժանարար:Դուք կարող եք ընտրել մեկ նիշը փոխարինել տողով` նոր տող կամ վագոն վերադարձ: |
Mysqlimport հրամանի սովորաբար օգտագործվող տարբերակներն են՝ -v տարբերակը (տարբերակը) ցուցադրելու համար, -p՝ գաղտնաբառ պահանջելու համար և այլն։
Հույս Chen Weiliang բլոգ ( https://www.chenweiliang.com/ ) կիսվել է «Ինչպե՞ս ներմուծել txt MySQL տվյալների աղյուսակում:Ներմուծեք sql ֆայլը տվյալների բազայի ձեռնարկ», դա կօգնի ձեզ:
Բարի գալուստ՝ կիսելու այս հոդվածի հղումը.https://www.chenweiliang.com/cwl-503.html
