SQL Плюс текущий каталог изменения

ЕСЛИ вы не хотите, чтобы смещение временной зоны было включено, вы можете использовать Date.UTC

Примечание: если Date вызывается как конструктор с несколькими аргументами, указанные аргументы представляют местное время. Если требуется UTC, используйте новую дату (Date.UTC (...)) с теми же аргументами.

blockquote>

~ MDN

Выход из Firefox dev console:

> new Date(2015,9,1)
  Date 2015-09-30T22:00:00.000Z  // reproduces your problem, my local time is GMT+0200
> new Date(Date.UTC(2015,9,1))
  Date 2015-10-01T00:00:00.000Z // UTC time

Однако 00:00:00 GMT+0200 и 22:00:00.000Z - это просто разные способы представления смещения часового пояса в строчном представлении даты. Разница заключается в методе, используемом при печати на консоль: большинство браузеров используют .toString(), а Firefox использует .toISOString(). (Отредактировано: ранее было указано, что реализации метода toString отличаются друг от друга, что неверно).

В методах Chrome (Thu Oct 01 2015 00:00:00 GMT+0200) и Firefox (Date 2015-09-30T22:00:00.000Z), таких как .getDate() и .getMonth() возвращают одинаковые значения (1 и 9 соответственно). Объекты Date одинаковы.

14
задан Andrew Stein 4 February 2009 в 23:41
поделиться

5 ответов

Вы могли использовать переменную среды SQLPATH для сообщения sqlplus, где искать сценарии, Вы пытаетесь работать? Я полагаю, что Вы могли использовать ХОСТ для установки SQLPATH в сценарии также.

могли потенциально быть проблемы, если два сценария имеют то же имя, и оба каталога находятся в SQLPATH.

8
ответ дан 1 December 2019 в 06:31
поделиться

Я не думаю, что можно изменить каталог в SQL*Plus.

Вместо того, чтобы изменить каталог, можно использовать @@filename, который читает в другом сценарии, местоположение которого относительно каталога, в котором работает текущий сценарий. Например, если у Вас есть два сценария

C:\Foo\Bar\script1.sql
C:\Foo\Bar\Baz\script2.sql

затем script1.sql, может работать script2.sql, если это содержит строку

@@Baz\script2.sql

, См. это для большего количества информации приблизительно @@.

10
ответ дан 1 December 2019 в 06:31
поделиться

Я не думаю, что Вы можете!

/home/export/user1 $ sqlplus / 
> @script1.sql
> HOST CD /home/export/user2
> @script2.sql

script2.sql должен быть в /home/export/user1.

Вы или используйте полный путь, или выйдите из сценария и начните sqlplus снова с правильного каталога.

#!/bin/bash
oraenv .
cd /home/export/user1
sqlplus / @script1.sql
cd /home/export/user2
sqlplus / @script2.sql

(что-то как этот - выполнение этого из памяти!)

4
ответ дан 1 December 2019 в 06:31
поделиться

Вы попытались создать ярлык окон для sql плюс и установили рабочий каталог?

2
ответ дан 1 December 2019 в 06:31
поделиться

Вот что я делаю.

Определите переменную, которая поможет вам:

define dir=C:\MySYSTEM\PTR190\Tests\Test1

@&dir\myTest1.sql

Вы не можете cd в SQL * Plus (вы можете cd с помощью команды host, но поскольку это дочерний элемент процесс, настройка не будет сохраняться в родительском процессе).

20
ответ дан 1 December 2019 в 06:31
поделиться
Другие вопросы по тегам:

Похожие вопросы: