Что не так с этим МН / SQL? Свяжите Переменную *, НЕ ОБЪЯВЛЯЕТСЯ

Что касается вопроса, как спросили: Это зависит от реализации. С MSVC 7.1 это:

std:: cout << sizeof(std::vector<int>) << std::endl;

дает мне 16 (байты). (Трехочковые: начните, закончитесь, и конец способности, плюс средство выделения)

Однако , нужно отметить, что указатель на вектор дает ему большие издержки:

  • в оба времени и пространства в непустом ящике
  • в сложности во всех случаях.
12
задан Jim Ferrans 20 October 2009 в 23:22
поделиться

4 ответа

Понятно:

set serveroutput on

declare
  v_str1   varchar2(80);    
begin
 v_str1 := 'test';
 dbms_output.put_line(v_str1);
end;

Подробнее здесь.

5
ответ дан 2 December 2019 в 22:05
поделиться

Попробуйте

declare
  v_str1   varchar2(80);
begin
  v_str1 := 'test';
  print v_str1;
end
0
ответ дан 2 December 2019 в 22:05
поделиться

Синтаксис переменных связывания в форме: VARNAME используется в основном в SQL * Plus (за исключением переменных связывания для динамического SQL, я думаю). Для SQL * Developer, PL / SQL Developer или других приложений существует "&" для замены переменных:


declare
  v_str1   varchar2(80);
begin
  v_str1 := &v_str;
  print v_str1;
end

EDIT: Моя ошибка, код для Oracle SQL * Developer должен был быть таким:


set serveroutput on;
declare
  v_str1   varchar2(80);
begin
  v_str1 := '&v_str';
  dbms_output.put_line(v_str1);
end;

Вы должны выбрать все и выполнить. Результат появится на панели «Вывод сценария».

3
ответ дан 2 December 2019 в 22:05
поделиться

print is not a PLSQL function. If you want to get an output, you can use dbms_output.put_line(v_str1);

set serveroutput on;    
declare v_str1 varchar2(80);
begin
    v_str1 := 'test'; 
    dbms_output.put_line(v_str1);
end;

:v_str1 is a bind variable but you must declare not in a plsql. When you declare it you must use VARIABLE keyword.

3
ответ дан 2 December 2019 в 22:05
поделиться
Другие вопросы по тегам:

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