среда, 24 декабря 2014 г.

Как вставить одиночную кавычку в строку символов

Как вставить одиночную кавычку в строку символов

Если вам нужно вставить разделитель в строку, возникают муки с ужасными последствиями. До реализации Oracle Database 10g, вы должны были писать два символа кавычек подряд, для того чтобы в строку попал один. Вот примеры:

Literal (default delimiter)                                Actual value
------------------------------                            -------------------------------
'There''s no business like show business.'            There's no business like show business.
'"Hound of the Baskervilles"'                              "Hound of the Baskervilles"
''''                                                                      '
'''hello'''                                                              'hello'
''''''                                                                     ''
Из примеров видно что для того, что бы записать две кавычки рядом, надо написать шесть кавычек. Что бы упростить жизнь программисту, Oracle Database 10g ввела возможность пользователю ввести свои собственные разделители. Начните строку с символа "q", что бы указать свой разделитель, и окружите свое выражение в своих разделителях одинарными кавычками.

Вот примеры:

Literal (delimiters highlighted)                                        Actual value
--------------------------------------------                       -----------------------------------------
q' ( There's no business like show business.)                      ' There's no business like show business.
q' { "Hound of the Baskervilles" } '                                    "Hound of the Baskervilles"
q' [ ' ]'                                                                               '
q' !'hello' ! '                                                                       'hello'
q' |'' | '                                                                               ''

Вы можете использовать простые разделители такие как   ! или  |, или парные символа, такие как скобки, квадратные или фигурные скобки.

Одно финальное замечание: как вы и ожидаете, внутри строки символ двойной кавычки не имеет какого-то особого значения. Это символ такой же как и любой символ или цифра.

воскресенье, 7 декабря 2014 г.

Перемещение таблиц в новое табличное пространство


Итак, у нас сложилась не хорошая ситуация. В одном табличном пространстве "свалены" таблицы и их индексы от разных схем. Принимаем решение - для схемы SCHEMA10 создаем отдельное табличное пространство с именем TABLESPACE10. Для реальной схемы таблиц и индексов много. Тогда пропускаем в вашем любимом навигаторе, например SQLDeveloper вот этот оператор. И получаем для каждой таблицы и индекса строку с командами alter table move или alter index rebuild. Через copy/paste переносим их и выполняем. Готово.
Иногда полезно указать конкретное табличное пространство, из которого переносим таблицы.

select txt from (
select decode( segment_type, 'TABLE', segment_name, table_name ) order_col1,
       decode( segment_type, 'TABLE', 1, 2 ) order_col2,
      'alter '||lower(segment_type)||' '||lower(owner)||'.'||lower(segment_name)||
       decode(segment_type,'TABLE',' move ',' rebuild ')||
      ' tablespace TABLESPACE10;' txt
  from dba_segments d,
       (select table_name, index_name from dba_indexes) i
 where d.segment_type in ('TABLE', 'INDEX')
   and d.owner = 'SCHEMA10'
   and d.tablespace_name = 'TABLESPACE_OLD'
   and d.segment_name = i.index_name (+)
 order by 1, 2 )

среда, 29 октября 2014 г.

Установка PySide в Python 3.X для использования в Eclipse/PyDev

Установка PySide в Python 3.X для использования в Eclipse/PyDev

Для установки библиотеки PySide скачиваем файл дистрибутив и выполняем его. После этого входим в Eclipse-Pydev и настраиваем в Windows->Preferences настройки PyDev->Interpretes->Python Interpreter.
Проще всего удалить старое описание местонахождение Python и завести его по новой. Дальше в закладке Forced Builtins добавляем имя PySide.
Теперь в редакторе будет работать автозавершение.
PySide использует Qt4.8, только импортировать модули надо из PySide.
Компоновка немного другая, чем в PyQt, Но когда автозавершение заработает, вы легко поймете где что лежит.

воскресенье, 19 октября 2014 г.

Python3

В языке Python3+ пакет Tkinter перименован в tkinter, именно к нему надо ссылаться из программы. Вот таблица переименований:
  • Tkintertkinter
  • tkMessageBoxtkinter.messagebox
  • tkColorChoosertkinter.colorchooser
  • tkFileDialogtkinter.filedialog
  • tkCommonDialogtkinter.commondialog
  • tkSimpleDialogtkinter.simpledialog
  • tkFonttkinter.font
  • Tkdndtkinter.dnd
  • ScrolledTexttkinter.scrolledtext
  • Tixtkinter.tix
  • ttktkinter.ttk
Вы установили win32, но на оператор import win32api ругается попробуйте следующее:
1. Из папки C:\Python34\Lib\site-packages\pywin32_system32 скопируйте файлы
pythoncom34.dll
pywintypes34.dll
в папку C:\Python34\Lib\site-packages\win32;
2. Путь C:\Python34\Lib\site-packages\win32 должен быть в переменной окружения PATH.
3. Если не видите папку C:\Python34\Lib\site-packages\pywin32_system32, то в своем Навигаторе настройте видеть системные папки.

пятница, 3 октября 2014 г.

Программирование-читать

http://blog.fogus.me/2011/09/08/10-technical-papers-every-programmer-should-read-at-least-twice/

Белушкин С
http://rasfokus.ru/srg_52

Первый объект SEOvezetgazel
 

четверг, 14 августа 2014 г.

Молитва пожилого человека

Этот текст висит на стене в квартире Алексея Германа. Это молитва пожилого человека, которую читал его отец, известный писатель Юрий Герман.
Но чем раньше человек повесит его на свою, пусть даже виртуальную, стену, тем лучше.


Господи, ты знаешь лучше меня, что я скоро состарюсь. 

Удержи меня от рокового обыкновения думать, 
что я обязан по любому поводу что-то сказать...
...Спаси меня от стремления вмешиваться в дела каждого, 

чтобы что-то улучшить. 
Пусть я буду размышляющим, но не занудой. Полезным, но не деспотом.
...Охрани меня от соблазна детально излагать бесконечные подробности. 

Дай мне крылья, чтобы я в немощи достигал цели. 
Опечатай мои уста, если я хочу повести речь о болезнях. 
Их становится все больше, а удовольствие без конца рассказывать о них - все слаще.
...Не осмеливаюсь просить тебя улучшить мою память, 

но приумножь мое человеколюбие, 
усмири мою самоуверенность, когда случится моей памятливости столкнуться с памятью других.
 

Об одном прошу, Господи, не щади меня, 
когда у тебя будет случай преподать мне блистательный урок, 
доказав, что и я могу ошибаться... 
если я умел бывать радушным, сбереги во мне эту способность. 
Право, я не собираюсь превращаться в святого: иные из них невыносимы в близком общении. 
Однако и люди кислого нрава - вершинные творения самого дьявола.
 Научи меня открывать хорошее там, где его не ждут, 
и распознавать неожиданные таланты в других людях.
Аминь. 


А. Ширвинт:

Старики должны быть беспомощны и трогательны, тогда их жалко, и они нужны для ландшафта и секундного осмысления молодежью бренности существования. 

Воинственно молодящихся стариков надо сбрасывать со скал. За неимением скал - сбрасывать со счетов. 
Я имею в виду банковские.

Список полезных упражнений https://sites.google.com/site/hozhak/upraznenia-dla-pozvonocnika

вторник, 12 августа 2014 г.

Apache Derby на Windows

Если вы решили заняться Apache Derby на Windows, то при использовании утилит вы будите получать абра-кадабру в сообщениях в консольном окне. Что бы это исправить, нужно в пакетных файлах вызова утилит установить переменную вот так -Dderby.ui.codeset=Cp866. Например:
:runNoClasspath
"%_JAVACMD%"  -Dderby.ui.codeset=Cp866 %DERBY_OPTS% -classpath "%LOCALCLASSPATH%" org.apache.derby.tools.sysinfo %DERBY_ARGS%

%DERBY_CMD_LINE_ARGS%
goto end

:runWithClasspath
"%_JAVACMD%"  -Dderby.ui.codeset=Cp866 %DERBY_OPTS% -classpath "%CLASSPATH%;%LOCALCLASSPATH%" org.apache.derby.tools.sysinfo %DERBY_ARGS%

%DERBY_CMD_LINE_ARGS%
goto end


Это фрагмент файла sysinfo.bat.

X-Plane 11, 12 - любитель, Фото любитель со стажем

Постоянные читатели

Архив блога