Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Вниз

Как задекларировать BASED ON переменную   Найти похожие ветки 

 
ali_tash   (2005-07-18 19:31) [0]

У меня не получается задекларировать BASED ON (как %TYPE в ORACLE) переменную в хранимой процедуре
Пож приведите пример как можно это сделать.


 
Desdechado ©   (2005-07-18 20:21) [1]

AFAIK, в ХП поддерживаются только простые типы данных для переменных


 
ali_tash   (2005-07-19 06:16) [2]

Но где тогда её можно  использовать ?


 
Digitman ©   (2005-07-19 08:35) [3]


> где тогда её можно  использовать ?


только в IB EmbeddedSQL

в PSQL/ISQL/DSQL декларативная статья BASED ON неприменима и недопустима

цитата из штатной док-ции по IB6 EmbeddedSQL:

Using BASED ON to declare variables
InterBase supports a declarative clause, BASED ON, for creating C language character
variables based on column definitions in a database. Using BASED ON ensures that the
resulting host-language variable is large enough to hold the maximum number of
characters in a CHAR or VARCHAR database column, plus an extra byte for the
null-terminating character expected by most C string functions.
BASED ON uses the following syntax:
BASED ON < dbcolumn> hostvar;
For example, the following statements declare two host variables, fname, and lname,
based on two column definitions, FIRSTNAME, and LASTNAME, in an employee database:
BASED ON EMP.FIRSTNAME fname;
BASED ON EMP.LASTNAME lname;
Embedded in a C or C++ program, these statements generate the following host- variable
declarations during preprocessing:
char fname[26];
char lname[26];
To use BASED ON, follow these steps:
1. Use SET DATABASE to specify the database from which column definitions are
to be drawn.
2. Use CONNECT to attach to the database.
3. Declare a section with BEGIN DECLARE SECTION.
4. Use the BASED ON statement to declare a string variable of the appropriate
type.
The following statements show the previous BASED ON declarations in context:
EXEC SQL
SET DATABASE EMP = ’employee.gdb’;
EXEC SQL
CONNECT EMP;
EXEC SQL
BEGIN DECLARE SECTION;
int empno;
BASED ON EMP.FIRSTNAME fname;
BASED ON EMP.LASTNAME lname;
EXEC SQL
END DECLARE SECTION;



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.08.28;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.038 c
3-1121682484
S_s
2005-07-18 14:28
2005.08.28
QuickRepotr: составление отчета


3-1121337642
Ирина
2005-07-14 14:40
2005.08.28
SetField, AppendRecord


4-1121334928
IceBeerg
2005-07-14 13:55
2005.08.28
Установка даты.


9-1115123072
Aleksej Kaminsky
2005-05-03 16:24
2005.08.28
удаленная работа по моделированию low-poly


8-1113669884
Comrade
2005-04-16 20:44
2005.08.28
Видио во весь экран





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский