|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Добрый день. Хотелось бы окончательно разобраться в необходимости ставить пробел в хинтах после /*+ В mos(Doc ID 29236.1) черным по белому пишут Syntax: /*+ HINT HINT ... */ Note: (In PLSQL the space between the '+' and the first letter of the hint is vital as otherwise the hint may be ignored. So /*+ ALL_ROWS */ is fine but /*+ALL_ROWS */ will cause problems. See Bug:697121 Ссылаясь на баг 8 версии, который судя по описанию бага починили в 9 версии. Собственно вопрос, для более актуальных версий 11,12,18,19 кто встречал проблемы с работой хинтов из за отсутствия пробела, типа /*+push_pred*/ вместо /+ push_pred*/ и насколько равноправно написание хинтов без пробелов и с ними в текущих реалиях? В своём опыте всё время писал хинты без пробела и никогда не замечал проблем из за этого ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 12:47 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor, Если сломался пробел, можно вводить кодом Alt+32 на дополнительной цифровой клавиатуре. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 12:52 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
-2-, спасибо, ценный опыт ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 12:53 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor В своём опыте всё время писал хинты без пробела и никогда не замечал проблем из за этого Пишите пробел в хинтах после "+" и не думайте о возможных проблемах из-за отсутствия этого пробела. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 13:12 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
SQL*Plus, Хотелось бы всё же найти пример, на котором хинт без пробела реально ломается ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 14:33 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor Хотелось бы всё же найти пример, на котором хинт без пробела реально ломается ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 14:39 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor, насколько помню проблема была в строчном --+ ..... stax ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 14:40 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 14:55 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor SQL*Plus, Хотелось бы всё же найти пример, на котором хинт без пробела реально ломается Нарочито вычурная аналогия: Я всю жизнь пил из луж и ни разу еще не болел из-за этого. Покажите мне лужу, выпив из которой я заболею. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 15:23 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Elic, речь не про /* + HINT*/ vs /*+ HINT*/, а про /*+HINT*/ vs /*+ HINT*/ xtender, аналогия хорошая, но тут ближе я не пью из грязных луж(8), Я всю жизнь пил из чистых луж(10g+) и ни разу еще не болел из-за этого. Покажите мне чистую лужу, выпив из которой я заболею. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 15:33 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor речь не про /* + HINT*/ vs /*+ HINT*/, а про /*+HINT*/ vs /*+ HINT*/ Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 15:45 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Elic, feagorдля более актуальных версий 11,12,18,19 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 15:49 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor, Сегодня ты не поставишь пробел, а завтра захочешь впендюрить левую букву перед хинтом! Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
По мотивам 20864930 . Странно само желаение писать криво если в доке четко указан формат хинта. Вообще отсутствие пробела в хинте это все равно что ставить пробелы перед запятыми в тексте: вроде и понятно, но выглядит омерзительно. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 15:59 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 16:42 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Кобанчег Странно само желание писать криво если в доке четко указан формат хинта. https://docs.oracle.com/en/database/oracle/oracle-database/20/sqlrf/Comments.html#GUID-D316D545-89E2-4D54-977F-FC97815CD62E Кобанчег ... ставить пробелы перед запятыми в тексте: вроде и понятно, но выглядит омерзительно. Вот так выглядит ,когда пробел стоит перед запятой. Так выглядит , когда пробел и перед запятой , и после неё. А еще противнее,когда вообще не ставят пробелы. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 17:46 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
2.6.3 Hints https://docs.oracle.com/en/database/oracle/oracle-database/20/sqlrf/Comments.html#GUID-D316D545-89E2-4D54-977F-FC97815CD62E - hint is one of the hints discussed in this section. The space between the plus sign and the hint is optional. If the comment contains multiple hints, then separate the hints by at least one space. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 17:53 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
SQL*Plus, SQL Reference не является авторитетом для PL/SQL. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:11 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
Эстетический вопрос использования пробела это больше вопрос вкуса. Я привык не ставить, и мне нравится. Спасибо за ссылку в доку, это получается только в 20 появилось? Резюмируя, разницы между /*+HINT*/ vs /*+ HINT*/ в плане функционала никакой нет и это чисто вопрос вкуса. Всем большое спасибо ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:20 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor Резюмируя Так скажу: грамотные люди опознают друг друга в кофейне, услышав "кофе" в мужском роде. А опытные ораклоиды, повидавшие многие версии сервера - по пробелу в хинте. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:26 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
andrey_anonymous, я все же считаю, что лучше понимать для чего этот пробел ставишь, чем слепо его ставить, потому что "опытные ораклоиды" ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:31 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
-2- SQL*Plus, SQL Reference не является авторитетом для PL/SQL. А я считаю, что является, поскольку в документе "Database PL/SQL Language Reference" нет отдельного описания хинтов (есть только про NOCOPY). Кроме в одном месте явно написано: Database PL/SQL Language Reference 13.3.1 Tune SQL Statements The most common cause of slowness in PL/SQL programs is slow SQL statements. To make SQL statements in a PL/SQL program as efficient as possible: • Use appropriate indexes. For details, see Oracle Database Performance Tuning Guide. • Use query hints to avoid unnecessary full-table scans. For details, see Oracle Database SQL Language Reference . ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:37 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor Спасибо за ссылку в доку, это получается только в 20 появилось? Не знаю. Не смотрел в других версиях. Если интересно, посмотрите и нам расскажите, что в какой версии было по этой теме написано. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:39 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
feagor andrey_anonymous, я все же считаю, что лучше понимать для чего этот пробел ставишь, чем слепо его ставить, потому что "опытные ораклоиды" что текст хинта следует начинать считывать с пятой позиции от начала комментария: Код: plsql 1. 2. 3. 4. 5. 6. 7. 8.
Дальше думайте сами, смотрите в зеркало и др. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:46 |
|
Синтаксис хинтов, а именно необходимость пробела после +
|
|||
---|---|---|---|
#18+
SQL*Plus, в 9i https://docs.oracle.com/cd/B10501_01/server.920/a96540/sql_elements7a.htm#31715 в 10g https://docs.oracle.com/cd/B19306_01/server.102/b14200/sql_elements006.htm#i35922 в 11g https://docs.oracle.com/cd/E11882_01/server.112/e41084/sql_elements006.htm#SQLRF00219 в 12c тоже есть https://docs.oracle.com/database/121/SQLRF/sql_elements006.htm#SQLRF00219 hint is one of the hints discussed in this section. The space between the plus sign and the hint is optional. If the comment contains multiple hints, then separate the hints by at least one space. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 18:47 |
|
|
start [/forum/topic.php?fid=52&fpage=51&tid=1881447]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
46ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
66ms |
get tp. blocked users: |
1ms |
others: | 306ms |
total: | 467ms |
0 / 0 |