Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ошибочные хинты в запросе / 25 сообщений из 26, страница 1 из 2
12.10.2017, 16:28
    #39535504
Valergrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
https://docs.oracle.com/cloud/latest/db112/SQLRF/sql_elements006.htm#SQLRF51098

Oracle Database ignores hints and does not return an error under the following circumstances:
• The hint contains misspellings or syntax errors. However, the database does consider other correctly specified hints in the same comment.

Эта фраза выглядит как "если в комменте есть два хинта, и один из них некорректный, а второй - корректный, то второй применится."
На практике легко проверить, что первый же ошибочный хинт выключает все хинты, следующие за ним, независимо от их корректности.
Это ошибка в доке или я просто не понимаю?
...
Рейтинг: 0 / 0
12.10.2017, 16:33
    #39535506
Elic
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
ValergradНа практике легко проверить, чтоНу так продемонстрируй.
...
Рейтинг: 0 / 0
12.10.2017, 16:37
    #39535508
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Valergrad,

Да, про это уже кто-то писал давно в блоге у себя... сходу не вспомню у кого, но это известная штука
...
Рейтинг: 0 / 0
12.10.2017, 16:40
    #39535511
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Хотя если я правильно помню то игнорирует только до конца строки, поэтому если хинты расположить каждый в своей строке то будут работать те что правильные. Кром того точно знаю что так хинты можно закомментировать
...
Рейтинг: 0 / 0
12.10.2017, 16:41
    #39535512
Lary Denis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Valergrad,

Код: plsql
1.
2.
3.
4.
5.
6.
create table tst_tab as select level id from dual connect by level < 1001;

explain plan for
select * 
from  tst_tab t1 
inner join tst_tab t2 on t1.id = t2.id;




| 0 | SELECT STATEMENT | | 1000 | 26000 | 6 (0)| 00:00:01 ||* 1 | HASH JOIN | | 1000 | 26000 | 6 (0)| 00:00:01 || 2 | TABLE ACCESS FULL| TST_TAB | 1000 | 13000 | 3 (0)| 00:00:01 || 3 | TABLE ACCESS FULL| TST_TAB | 1000 | 13000 | 3 (0)| 00:00:01 |

Код: plsql
1.
2.
3.
4.
explain plan for
select /*+ materialiBe use_nl(t1,t2)*/ * 
from  tst_tab t1 
inner join tst_tab t2 on t1.id = t2.id;



| 0 | SELECT STATEMENT | | 1000 | 26000 | 1510 (1)| 00:00:01 || 1 | NESTED LOOPS | | 1000 | 26000 | 1510 (1)| 00:00:01 || 2 | TABLE ACCESS FULL| TST_TAB | 1000 | 13000 | 3 (0)| 00:00:01 ||* 3 | TABLE ACCESS FULL| TST_TAB | 1 | 13 | 2 (0)| 00:00:01 |


11.2
...
Рейтинг: 0 / 0
12.10.2017, 16:48
    #39535517
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Valergrad,

Эта фраза не выглядит так.
Но если вопрос - могут ли "левые" слова влиять на применимость кооректных хинтов - ответ да.
16304443
...
Рейтинг: 0 / 0
12.10.2017, 16:54
    #39535523
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
хотя, видимо, все меняется:
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
SQL> select/*+
  2     opt_param('optimizer_index_caching' 1)
  3     --opt_param('optimizer_index_cost_adj' 3)
  4     OPTIMIZER_FEATURES_ENABLE('11.2.0.2')
  5     q first_rows(10)
  6     opt_param('optimizer_index_cost_adj' 7)
  7  */
  8  * from dual;

D
-
X

1 row selected.

SQL> select * from table(dbms_xplan.display_cursor('','','last +outline'));

PLAN_TABLE_OUTPUT
--------------------------------------------------------------
SQL_ID  6cu5s2v6mv18k, child number 0
-------------------------------------

Plan hash value: 272002086

--------------------------------------------------------------------------
| Id  | Operation         | Name | Rows  | Bytes | Cost (%CPU)| Time     |
--------------------------------------------------------------------------
|   0 | SELECT STATEMENT  |      |       |       |     2 (100)|          |
|   1 |  TABLE ACCESS FULL| DUAL |     1 |     2 |     2   (0)| 00:00:01 |
--------------------------------------------------------------------------

Outline Data
-------------

  /*+
      BEGIN_OUTLINE_DATA
      IGNORE_OPTIM_EMBEDDED_HINTS
      OPTIMIZER_FEATURES_ENABLE('11.2.0.2')
      DB_VERSION('12.2.0.1')
      OPT_PARAM('optimizer_index_cost_adj' 7)
      OPT_PARAM('optimizer_index_caching' 1)
      FIRST_ROWS(10)
      OUTLINE_LEAF(@"SEL$1")
      FULL(@"SEL$1" "DUAL"@"SEL$1")
      END_OUTLINE_DATA
  */
...
Рейтинг: 0 / 0
12.10.2017, 16:56
    #39535527
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Простая демонстрация без планов.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
SQL> create table t as select 1 id from dual;

Table created.

SQL> select --+ rewrite_or_error
  2  * from t;
* from t
       *
ERROR at line 2:
ORA-30393: a query block in the statement did not rewrite


SQL> select --+ ooops rewrite_or_error
  2  * from t;
* from t
       *
ERROR at line 2:
ORA-30393: a query block in the statement did not rewrite


SQL> select --+ ooops i did it again rewrite_or_error
  2  * from t;
* from t
       *
ERROR at line 2:
ORA-30393: a query block in the statement did not rewrite


SQL> select --+ ignore that shit rewrite_or_error
  2  * from t;

        ID
----------
         1



Надеюсь не надо уточнять, что не стоит делать из этого далеко идущие выводы.
...
Рейтинг: 0 / 0
12.10.2017, 17:04
    #39535534
Valergrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
А попробуйте это:

select /*+ full(t3,t4) use_nl(t1,t2)*/ *
from tst_tab t1
inner join tst_tab t2 on t1.id = t2.id;


Plan hash value: 3128579258

-------------------------------------------------------------------------------
| Id | Operation | Name | E-Rows |E-Bytes| Cost (%CPU)| E-Time |
-------------------------------------------------------------------------------
| 0 | SELECT STATEMENT | | 1000 | 26000 | 6 (0)| 00:00:01 |
|* 1 | HASH JOIN | | 1000 | 26000 | 6 (0)| 00:00:01 |
| 2 | TABLE ACCESS FULL| TST_TAB | 1000 | 13000 | 3 (0)| 00:00:01 |
| 3 | TABLE ACCESS FULL| TST_TAB | 1000 | 13000 | 3 (0)| 00:00:01 |
-------------------------------------------------------------------------------
...
Рейтинг: 0 / 0
12.10.2017, 17:04
    #39535535
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
блин, вспомнил что в той статье в чьем-то блоге показывался пример на буквах, и не все буквы приводили к игнорированию остальных хинтов, а вот вспомнить в чьем блоге и нагуглить не удается...
Если правильно помню, Тимур Ахмадеев там тоже участвовал в дискуссии
...
Рейтинг: 0 / 0
12.10.2017, 17:06
    #39535537
Valergrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
dbms_photoshop
Надеюсь не надо уточнять, что не стоит делать из этого далеко идущие выводы.

Вывод: "не стоит в принципе рассчитывать на то, что в случае некорректности одного хинта будут работать остальные" - далеко идущий?
...
Рейтинг: 0 / 0
12.10.2017, 17:08
    #39535538
Valergrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
xtenderблин, вспомнил что в той статье в чьем-то блоге показывался пример на буквах, и не все буквы приводили к игнорированию остальных хинтов

А у меня нет цензурных букв на такое поведение оракла :)
...
Рейтинг: 0 / 0
12.10.2017, 17:10
    #39535541
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Valergraddbms_photoshopНадеюсь не надо уточнять, что не стоит делать из этого далеко идущие выводы.

Вывод: "не стоит в принципе рассчитывать на то, что в случае некорректности одного хинта будут работать остальные" - далеко идущий?Корректный вывод.

Я про бесполезность построения теорий в каких именно случаях левые буквы влияют на корректные хинты.
...
Рейтинг: 0 / 0
12.10.2017, 17:15
    #39535544
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
имхо просто не надо кривые хинты писать
...
Рейтинг: 0 / 0
12.10.2017, 17:16
    #39535548
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
или хотя бы закомментируйте их
...
Рейтинг: 0 / 0
12.10.2017, 17:29
    #39535562
Lary Denis
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
ValergradА попробуйте это:

select /*+ full(t3,t4) use_nl(t1,t2)*/ *
from tst_tab t1
inner join tst_tab t2 on t1.id = t2.id;


Со всем этим уже не работает.

Код: plsql
1.
2.
3.
select /*+ ~,.!& use_nl(t1,t2) */ * 
from tst_tab t1 
inner join tst_tab t2 on t1.id = t2.id;
...
Рейтинг: 0 / 0
12.10.2017, 17:29
    #39535563
j2k
j2k
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Да ладно хинты :D

Код: plsql
1.
2.
with t as (select level a, trunc(level/3) b from dual connect by level<=10) 
select b, min(a) keep (dense_rank last ЙА_БЭТМЕН by a) from t  group by b
...
Рейтинг: 0 / 0
12.10.2017, 18:11
    #39535594
Ошибочные хинты в запросе
j2kДа ладно хинты :D

Код: plsql
1.
2.
with t as (select level a, trunc(level/3) b from dual connect by level<=10) 
select b, min(a) keep (dense_rank last ЙА_БЭТМЕН by a) from t  group by b

выделять же нужно... а то не сразу в глаза бросается... $)
...
Рейтинг: 0 / 0
12.10.2017, 19:36
    #39535638
andrey_anonymous
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
dbms_photoshop бесполезность построения теорий в каких именно случаях левые буквы влияют на корректные хинты.
Это вопрос к парсеру - именно он решает, в каком месте заканчивается некорректная последовательность волшебных символов и начинает искать следующую.
...
Рейтинг: 0 / 0
12.10.2017, 21:41
    #39535698
SY
SY
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
xtenderблин, вспомнил что в той статье в чьем-то блоге показывался пример на буквах, и не все буквы приводили к игнорированию остальных хинтов

А ты посмотри на последний SQL в примере от dbms_photoshop'а. Похоже еть недокументиpовaнные хинты для отмены хинтов:

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
84.
85.
86.
87.
88.
89.
90.
91.
92.
93.
94.
95.
96.
97.
98.
99.
100.
101.
102.
103.
104.
105.
106.
107.
108.
109.
110.
111.
112.
113.
114.
115.
116.
117.
118.
119.
120.
121.
122.
123.
124.
125.
126.
127.
128.
129.
130.
131.
132.
133.
134.
135.
136.
137.
138.
139.
140.
141.
142.
143.
144.
145.
146.
147.
148.
149.
150.
151.
152.
153.
154.
155.
156.
157.
158.
159.
160.
161.
162.
163.
164.
165.
166.
167.
168.
169.
170.
171.
172.
173.
174.
175.
176.
177.
178.
179.
180.
181.
182.
183.
184.
185.
186.
187.
188.
189.
190.
191.
192.
193.
194.
195.
196.
197.
198.
199.
200.
201.
202.
203.
204.
205.
206.
207.
208.
209.
210.
211.
212.
213.
SQL> explain plan for
  2  select  *
  3    from  emp e,dept d
  4    where empno = 1
  5      and d.deptno = e.deptno
  6  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 2385808155

----------------------------------------------------------------------------------------
| Id  | Operation                    | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |         |     1 |    58 |     2   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                |         |     1 |    58 |     2   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP     |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP  |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS BY INDEX ROWID| DEPT    |     1 |    20 |     1   (0)| 00:00:01 |
|*  5 |    INDEX UNIQUE SCAN         | PK_DEPT |     1 |       |     0   (0)| 00:00:01 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   3 - access("EMPNO"=1)
   5 - access("D"."DEPTNO"="E"."DEPTNO")

18 rows selected.

SQL> explain plan for
  2  select  --+ use_hash(d,e)
  3          *
  4    from  emp e,dept d
  5    where empno = 1
  6      and d.deptno = e.deptno
  7  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 373232351

---------------------------------------------------------------------------------------
| Id  | Operation                    | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |        |     1 |    58 |     4   (0)| 00:00:01 |
|*  1 |  HASH JOIN                   |        |     1 |    58 |     4   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP    |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS FULL          | DEPT   |     4 |    80 |     3   (0)| 00:00:01 |
---------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - access("D"."DEPTNO"="E"."DEPTNO")
   3 - access("EMPNO"=1)

17 rows selected.

SQL> explain plan for
  2  select  --+ ignore use_hash(d,e)
  3          *
  4    from  emp e,dept d
  5    where empno = 1
  6      and d.deptno = e.deptno
  7  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 2385808155

----------------------------------------------------------------------------------------
| Id  | Operation                    | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |         |     1 |    58 |     2   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                |         |     1 |    58 |     2   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP     |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP  |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS BY INDEX ROWID| DEPT    |     1 |    20 |     1   (0)| 00:00:01 |
|*  5 |    INDEX UNIQUE SCAN         | PK_DEPT |     1 |       |     0   (0)| 00:00:01 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   3 - access("EMPNO"=1)
   5 - access("D"."DEPTNO"="E"."DEPTNO")

18 rows selected.

SQL> explain plan for
  2  select  --+ skip use_hash(d,e)
  3          *
  4    from  emp e,dept d
  5    where empno = 1
  6      and d.deptno = e.deptno
  7  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 2385808155

----------------------------------------------------------------------------------------
| Id  | Operation                    | Name    | Rows  | Bytes | Cost (%CPU)| Time     |
----------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |         |     1 |    58 |     2   (0)| 00:00:01 |
|   1 |  NESTED LOOPS                |         |     1 |    58 |     2   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP     |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP  |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS BY INDEX ROWID| DEPT    |     1 |    20 |     1   (0)| 00:00:01 |
|*  5 |    INDEX UNIQUE SCAN         | PK_DEPT |     1 |       |     0   (0)| 00:00:01 |
----------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   3 - access("EMPNO"=1)
   5 - access("D"."DEPTNO"="E"."DEPTNO")

18 rows selected.

SQL> explain plan for
  2  select  --+ ignoreD use_hash(d,e)
  3          *
  4    from  emp e,dept d
  5    where empno = 1
  6      and d.deptno = e.deptno
  7  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 373232351

---------------------------------------------------------------------------------------
| Id  | Operation                    | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |        |     1 |    58 |     4   (0)| 00:00:01 |
|*  1 |  HASH JOIN                   |        |     1 |    58 |     4   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP    |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS FULL          | DEPT   |     4 |    80 |     3   (0)| 00:00:01 |
---------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - access("D"."DEPTNO"="E"."DEPTNO")
   3 - access("EMPNO"=1)

17 rows selected.

SQL> explain plan for
  2  select  --+ skipPED use_hash(d,e)
  3          *
  4    from  emp e,dept d
  5    where empno = 1
  6      and d.deptno = e.deptno
  7  /

Explained.

SQL> select * from table(dbms_xplan.display)
  2  /

PLAN_TABLE_OUTPUT
-----------------------------------------------------------------------------------------
Plan hash value: 373232351

---------------------------------------------------------------------------------------
| Id  | Operation                    | Name   | Rows  | Bytes | Cost (%CPU)| Time     |
---------------------------------------------------------------------------------------
|   0 | SELECT STATEMENT             |        |     1 |    58 |     4   (0)| 00:00:01 |
|*  1 |  HASH JOIN                   |        |     1 |    58 |     4   (0)| 00:00:01 |
|   2 |   TABLE ACCESS BY INDEX ROWID| EMP    |     1 |    38 |     1   (0)| 00:00:01 |
|*  3 |    INDEX UNIQUE SCAN         | PK_EMP |     1 |       |     0   (0)| 00:00:01 |
|   4 |   TABLE ACCESS FULL          | DEPT   |     4 |    80 |     3   (0)| 00:00:01 |
---------------------------------------------------------------------------------------

Predicate Information (identified by operation id):
---------------------------------------------------

   1 - access("D"."DEPTNO"="E"."DEPTNO")
   3 - access("EMPNO"=1)

17 rows selected.

SQL>  



SY.
...
Рейтинг: 0 / 0
12.10.2017, 23:15
    #39535728
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Почти нашел!
Вот https://jonathanlewis.wordpress.com/2011/01/16/ignoring-hints-4/
и оттуда по линкам дальше :)
...
Рейтинг: 0 / 0
12.10.2017, 23:18
    #39535731
Sayan Malakshinov
Модератор форума
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Так что все v$reserved_words будут всё ломать :)
а там-то полно всего...
и это только длиной в 1 символ
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
SQL> select keyword from v$reserved_words where length(keyword)<=1 order by length(keyword),keyword;

KEYWORD
----------
!
$
&
(
)
*
+
,
-
.
/
:
;
<
=
>
?
@
A
D
E
G
H
K
M
P
T
U
[
]
^
{
|
}

34 rows selected.

...
Рейтинг: 0 / 0
13.10.2017, 00:27
    #39535745
dbms_photoshop
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Я помогу творческим личностям которым некуда девать энергию. Продолжайте.

Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
SQL> select --+ dbms_random.value rewrite_or_error
  2  * from t;

        ID
----------
         1

SQL> select --+ dbms_photoshop.value rewrite_or_error
  2  * from t;

        ID
----------
         1

SQL> select --+ dbms_random rewrite_or_error
  2  * from t;
* from t
       *
ERROR at line 2:
ORA-30393: a query block in the statement did not rewrite


SQL> select --+ dbms_photoshop rewrite_or_error
  2  * from t;
* from t
       *
ERROR at line 2:
ORA-30393: a query block in the statement did not rewrite


SQL> select --+ sys_guid() rewrite_or_error
  2  * from t;

        ID
----------
         1

SQL> select --+ sys_guid rewrite_or_error
  2  * from t;

        ID
----------
         1
...
Рейтинг: 0 / 0
13.10.2017, 10:09
    #39535836
Valergrad
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
xtenderили хотя бы закомментируйте их

))))) Не, я когда вижу закомментированный код - сразу удаляю, у нас же гит есть для истории!
...
Рейтинг: 0 / 0
13.10.2017, 10:23
    #39535846
Mercurial
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Ошибочные хинты в запросе
Valergradу нас же гит есть для истории!
Херня твой гит.
...
Рейтинг: 0 / 0
Форумы / Oracle [игнор отключен] [закрыт для гостей] / Ошибочные хинты в запросе / 25 сообщений из 26, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]