Модераторы: LSD
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Berkeley DB, импорт данных в таблицу mysql 
:(
    Опции темы
ozy
  Дата 3.6.2013, 06:42 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Есть таблица:
запрос:
Код
root@test:cd /home/gamedbd && ./gamedbd gamesys.conf listfactionuser
rid,name,fid,cls,role,loyalty,nickname
32,"",1,7,2,0,""
34,"",2,3,2,0,""

прошу помочь импортировать эти данные в таблицу "user" базы "dboef" в mysql с выводом "name" и "nickname" в формате useUnicode, так как ответ на запрос в консоли выводит вместо них ""

Например, вывод из другой таблицы - файл importuser.jsp
Код

<%@page contentType="text/html; charset=GBK"%>
<%@page import="java.lang.*"%>
<%@page import="java.util.*"%>
<%@page import="java.text.*"%>
<%@page import="org.apache.commons.lang.StringEscapeUtils"%>
<%@page import="protocol.*"%>
<%@page import="com.goldhuman.auth.*"%>
<%@page import="org.apache.commons.logging.Log"%>
<%@page import="org.apache.commons.logging.LogFactory"%>
<%@page import="java.sql.*"%>
<%

      Connection connection = null;
      Class.forName("com.mysql.jdbc.Driver");

      connection = DriverManager.getConnection("jdbc:mysql://localhost/dboef", "XXXXXX", "YYYYYYYY");
        Statement statement = connection.createStatement();

        //
        //CLEAR user
        //
        String deleteall = "DELETE FROM user";
        statement.executeUpdate(deleteall);


        //
        //GET USER DB FIRST
        //
        ResultSet rst=null;
        rst = statement.executeQuery("select ID from users ORDER BY ID DESC");

        RoleBean role = null;
        String tempplayername = null;
        String command = null;
        int index = 0;
        int maxid = 0;
        int roleid = 31;
        int uid = 0;
        int eachacc = 0;
        while (rst.next())
        {
                maxid = Integer.parseInt(rst.getString("ID"));
                break;
        }

        while (roleid <= maxid)
        {
                roleid++;
                eachacc++;
                try
                {
                        if (eachacc < 16) // ADSLPREDATOR
                        {
                                role = GameDB.get( roleid );
                                session.setAttribute( "gamedb_rolebean", role );
                                if (null == role){
                                        continue;
                                }
                                else
                                {
                                        tempplayername = null;
                                        tempplayername = StringEscapeUtils.escapeHtml(role.base.name.getString());

                                        index = 0;
                                        index = tempplayername.indexOf("'");
                                        StringBuffer playername = new StringBuffer(tempplayername);
                                        if(index > 0){
                                                playername.replace(index, index + 1, "?");
                                        }

                                        command = "INSERT INTO user (roleid, rolename, rolelevel, rolestatus, rolegender, rolecultivation, rolemoney, rolerace, roleprof, rolerep, redname, rednametime, pinknametime, roletimeused, rolehp, rolemp, rolebankmoney, exp) VALUES ("+roleid+", '"+playername+"', " + role.status.level + ", '" + role.base.status + "', '" + role.base.gender + "', '" + role.status.level2 + "', '" + role.pocket.money + "', '" + role.base.race + "', '" + role.base.cls + "', '" + role.status.reputation + "', '" + role.status.invader_state + "', '" + role.status.invader_time + "', '" + role.status.pariah_time + "', '" + role.status.time_used + "', '" + role.status.hp + "', '" + role.status.mp + "', '" + role.storehouse.money + "', '" + role.status.exp + "')";
                                        statement.executeUpdate(command);
                                        out.println("<br>--100% stored RoleDB: Name:" + tempplayername + " Roleid:" + roleid + " Level:" + role.status.level);
                                        //out.println(command);
                                }
                        }
                        else if (eachacc == 16) // ADSLPREDATOR
                                eachacc = 0;
                        else
                                continue;
                }
                catch (Exception e)
                {
                        continue;
                }
        }

%>



Это сообщение отредактировал(а) ozy - 3.6.2013, 08:19
PM MAIL WWW   Вверх
ozy
Дата 4.6.2013, 11:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 5
Регистрация: 3.6.2013

Репутация: нет
Всего: нет



Пожалуйста помогите smile 
Искала информацию в инете, обратилась на несколько форумов за помощью.
Безрезультатно.
Максимум могу заплатить 30 WMZ( аванс 10, остальное после проверки работоспособности скрипта)
PM MAIL WWW   Вверх
Akina
Дата 4.6.2013, 12:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Советчик
****


Профиль
Группа: Модератор
Сообщений: 20581
Регистрация: 8.4.2004
Где: Зеленоград

Репутация: 13
Всего: 454



У Вас в образце данных на месте требуемых параметров стоят пустые строки... откуда, спрашивается, взяться данным? ветром надует, что ли?
Добейтесь правильного ВЫВОДА исходных данных из места хранения.


--------------------
 О(б)суждение моих действий - в соответствующей теме, пожалуйста. Или в РМ. И высшая инстанция - Администрация форума.

PM MAIL WWW ICQ Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Общие вопросы по базам данных"
LSD
Zloxa

Данный форум предназначен для обсуждения вопросов о базах данных не попадающих под тематику других форумов:

  • вопросам по СУБД для которых нет отдельных подфорумов
  • вопросам которые затрагивают несколько разных СУБД (например проблема выбора)
  • инструменты для работы с СУБД
  • вопросы проектирования БД
  • теоретически вопросы о СУБД

Данный форум не предназначен для:

  • вопросов о поиске разлиных БД (если не понимаете чем БД отличается от СУБД то: а) вам не сюда; б) Google в помощь)
  • обсуждения проблем с доступом к СУБД из различных ЯП (для этого есть соответсвующие форумы по каждому ЯП)
  • обсуждения проблем с написание SQL запросов, для этого есть форум Составление SQL-запросов
  • просьб о написании курсовой, реферата и т.п., для этого есть Центр помощи или фриланс биржа
  • объявлений о найме специалистов, для этого есть раздел Объявления о найме специалистов

Если вы не соблюдаете эти правила, не удивляйтесь потом не найдя свою тему/сообщение. ;)


Полезные советы:

При написании сообщения постарайтесь дать теме максимально понятное название. В теме максимально подробно опишите проблему. Если применимо укажите: название базы данных и версии (MySQL 4.1, MS SQL Server 2000 и т.п.); используемых язык программирования; способа доступа (ADO, BDE и т.д.); сообщения об ошибках.

Для вставки кода используйте теги [code=sql] [/code].

Литературу по базам данных можно поискать здесь.

Действия модераторов можно обсудить здесь.


Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, LSD, Zloxa.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | СУБД, общие вопросы | Следующая тема »


 




[ Время генерации скрипта: 0.0461 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.