Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const mysql = require('mysql2/promise');
- const cards = require('../cards.json');
- let keys = {};
- let sorted = cards.slice(0).sort((a, b) => a.id - b.id);
- const map = {
- id: "id",
- n: "name",
- ta: "treated_as",
- e: "effect",
- pef: "pendulum_effect",
- c: "card_type",
- mc: "monster_color",
- ie: "is_effect",
- typ: "type",
- att: "attribute",
- lvl: "level",
- abi: "ability",
- flp: "flip",
- p: "pendulum",
- scl: "scale_left",
- arr: "arrows",
- atk: "atk",5
- def: "def",
- tcgl: "tcg_limit",
- ocgl: "ocg_limit",
- s: "serial_number",
- tcg: "tcg",
- ocg: "ocg",
- h: "hidden",
- }
- let conn = null;
- async function setup() {
- try {
- conn = await mysql.createConnection({
- host: "localhost",
- user: "root",
- password: "password",
- database: "LocalsOnline"
- });
- } catch (e) {
- console.log(e);
- process.exit(2);
- }
- await run();
- conn.close();
- }
- let i = 0;
- let lastId = 0;
- async function run() {
- let card = sorted[i];
- if (!card.id) {
- i++;
- if (i < sorted.length) {
- await run();
- }
- return;
- }
- if (card.id - 1 !== lastId) {
- console.log(`Skipped: ${lastId} => ${card.id}`);
- }
- lastId = card.id;
- let keys = "";
- let values = "";
- let valuesArr = [];
- for (let key in card) {
- if (!map[key]) continue;
- keys += `${map[key]}, `;
- values += `?, `;
- valuesArr.push(card[key]);
- }
- if (values.length >= 2) {
- keys = keys.slice(0, -2);
- values = values.slice(0, -2);
- try {
- await conn.execute(`INSERT INTO card_library (${keys}) VALUES (${values})`, valuesArr);
- } catch (e) {
- console.log(card);
- console.log(e);
- process.exit(1);
- }
- }
- i++;
- if (i < sorted.length) {
- await run();
- }
- }
- setup();
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement