Как перевести mssql в mysql ?

Тема в разделе "Базы данных", создана пользователем drkrol, 19 дек 2016.

Модераторы: latteo
  1. drkrol

    drkrol Постоялец

    Регистр.:
    6 мар 2016
    Сообщения:
    107
    Симпатии:
    10
    Здравствуйте. Есть вот такой mssql запрос:
    PHP:
    declare @start date '2016-12-12'; -- Новая дата заезда
    declare @end date '2016-12-20'; -- Новая дата выезда
    declare @today date '2016-12-11';

    update  main
    set     numbernomer 
    null
    where   datestart 
    > @today;

    declare @
    mainnumber int;

    while 
    exists (select from main where numbernomer is null)
    begin

        select top
    (1) @mainnumber id
        from    main
        where   numbernomer is null
        order by datestart asc
    datediff(daydatestartdateenddesc;

        
    update m0
        set     numbernomer 
    m1.nomer
        from    main m0
                cross apply 
    (SELECT top 1 a.nomer
                            FROM    allnomer a
                                    LEFT JOIN main m
                                    ON a
    .nomer m.numbernomer
                                    
    AND DATEDIFF(daym.datestartm0.dateend) * DATEDIFF(daym.dateendm0.datestart) <= 0
                                    left join 
    (select m2.numbernomermax(m2.dateend) as dateend from main m2 group by m2.numbernomer) as m2
                                            on a
    .nomer m2.numbernomer
                            WHERE a
    .type 'lux' AND m.numbernomer IS NULL
                            order by datediff
    (daym2.dateendm0.datestart), a.nomer
                            
    ) as m1
        where   m0
    .id = @mainnumber;

    end;

    SELECT a.nomer
    FROM allnomer a
    LEFT JOIN main m
      ON a
    .nomer m.numbernomer
      
    AND DATEDIFF(daym.datestart, @end) * DATEDIFF(daym.dateend, @start) <= 0
    WHERE a
    .type 'lux' AND m.numbernomer IS NULL;
    Подскажите пожалуйста, что нужно изменить, чтобы этот запрос работал в mysql? Я, кроме того, что нужно decale на set поменять и тип данных убрать, ничего не знаю.
    P.S. Запрос должен будет выполняться в этой таблице: http://sqlfiddle.com/#!9/81225
     
  2. dollar1981

    dollar1981

    Заблокирован
    Регистр.:
    17 май 2012
    Сообщения:
    183
    Симпатии:
    65
    Вот процедура конвертации:
    Конвертация из MSSQL в MYSQL.

    Для конвертации воспользуемся скриптом VB for Application
    1.Копируем в буфер все содержимое страницы
    2.Запускаем Microsoft Word
    Для Word 2003:
    В меню Сервис -> Сценарии -> Редактор Visual Basic (Tools->Macro…->Visual Basic Editor)
    Для Word 2007:
    Нажать на Office Button-> Word Options->Show Developer tab in the Ribbon. На панели появится вкладка Developer. В ней нажать на кнопку Visual Basic.
    3.Правой кнопкой нажать на Проект (Project). Выбрать Вставить–> Модуль (Insert -> Module)
    4.Вставить содержимое
    5.Изменить
    Const MSSQL_HOST = "(local)"
    Const MSSQL_DB_NAME = "Northwind"
    на
    Const MSSQL_HOST = "SERVERSQLEXPRESS "
    Const MSSQL_DB_NAME = "TEST"
    где TEST имя базы данных MSSQL
    6.Изменить
    Const OUTPUT_TO_FILE = 0 '1—> write file (latin1 encoding);
    Const OUTPUT_FILENAME = "c:export.sql"
    на
    Const OUTPUT_TO_FILE = 1 '1—> write file (latin1 encoding);
    Const OUTPUT_FILENAME = "c:export.sql"
    при необходимости можно изменить путь к файлу, в который будет осуществляться экспорт.
    7.В панели нажать на кнопку Run. Выбрать имя сценария (MacroName) Main и нажать Run.
    8.После выполнения должно появиться сообщение о завершении.
    В результате мы получили SQL файл в формате MySQL.
    Этот файл в некоторых случая стоит просмотреть и при необходимости скорректировать.

    Импорт в MySQL:

    Можно осуществить различными способами:
    1.Если есть доступ к shell на сервере.
    a.Копируем файл export.sql на сервер
    b.В командной строке сервера
    mysql –u username –p имяБД < export.sql

    2.Если доступа к shell нет, то можно воспользоваться, например www.phpmyadmin.net или EMS MySQL Manager Lite http://www.sqlmanager.net/en/products/mysql/manager/download
     
    Последнее редактирование: 19 дек 2016
  3. drkrol

    drkrol Постоялец

    Регистр.:
    6 мар 2016
    Сообщения:
    107
    Симпатии:
    10
    я не вижу, на каком моменте я вставляю в word свой sql запрос? да и не нашел я то, что тут написано... ворд у меня русскоязычный 2016. Нету тут "Показать меню разработчика"
     
  4. dollar1981

    dollar1981

    Заблокирован
    Регистр.:
    17 май 2012
    Сообщения:
    183
    Симпатии:
    65
    Ну знаете, я за вас качать word 2003-2007 не буду. Вы просили подсказать, я подсказал.

    Visual Basic for Applications (VBA, Visual Basic для приложений) — немного упрощённая реализация языка программирования Visual Basic, встроенная в линейку продуктов Microsoft Office (включая версии для Mac OS), а также во многие другие программные пакеты, такие как AutoCAD, SolidWorks, CorelDRAW, WordPerfect и ESRI ArcGIS. VBA покрывает и расширяет функциональность ранее использовавшихся специализированных макро-языков, таких как WordBasic.
     
    Последнее редактирование: 19 дек 2016
  5. drkrol

    drkrol Постоялец

    Регистр.:
    6 мар 2016
    Сообщения:
    107
    Симпатии:
    10
    извините. не хотел грубо отвечать. спасибо за совет
     
    dollar1981 нравится это.
  6. iStark

    iStark Писатель

    Регистр.:
    22 окт 2016
    Сообщения:
    3
    Симпатии:
    2
    Отображение вкладки "Разработчик" на ленте Microsoft Office Word 2007/2010: – нажмите кнопку Office –> Параметры Word; – в открывшемся диалоговом окне Параметры Word в меню (слева) выберите Основные; – в разделе Основные параметры работы с Word установите флажок Показывать вкладку "Разработчик" на ленте –> OK.

    А вообще пару десяти минутных уроков на юутубе, и ТС перепишет запрос сам из MSSQL в MySql
    Вот сравнение различных реализаций SQL
    http://troels.arvin.dk/db/rdbms/
     
  7. Dmytrodddddd

    Dmytrodddddd Создатель

    Регистр.:
    23 мар 2017
    Сообщения:
    26
    Симпатии:
    21
    Как решить проблему ковертации бд?
    После загрузки пишет error.
     
    Nastia1987 нравится это.
  8. zabolots

    zabolots Постоялец

    Регистр.:
    11 сен 2012
    Сообщения:
    55
    Симпатии:
    21
    Хорошо бы привести текст этой самой error :)