2001-05-23 15:26:42 +02:00
|
|
|
/*
|
2003-02-12 20:28:13 +01:00
|
|
|
* PROGRAM: Dynamic SQL runtime support
|
|
|
|
* MODULE: metd_proto.h
|
|
|
|
* DESCRIPTION: Prototype Header file for metd.epp
|
|
|
|
* This is a DSQL private header file. It is not included
|
|
|
|
* by anything but DSQL itself.
|
2001-05-23 15:26:42 +02:00
|
|
|
*
|
|
|
|
* The contents of this file are subject to the Interbase Public
|
|
|
|
* License Version 1.0 (the "License"); you may not use this file
|
|
|
|
* except in compliance with the License. You may obtain a copy
|
|
|
|
* of the License at http://www.Inprise.com/IPL.html
|
|
|
|
*
|
|
|
|
* Software distributed under the License is distributed on an
|
|
|
|
* "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
|
|
|
|
* or implied. See the License for the specific language governing
|
|
|
|
* rights and limitations under the License.
|
|
|
|
*
|
|
|
|
* The Original Code was created by Inprise Corporation
|
|
|
|
* and its predecessors. Portions created by Inprise Corporation are
|
|
|
|
* Copyright (C) Inprise Corporation.
|
|
|
|
*
|
|
|
|
* All Rights Reserved.
|
|
|
|
* Contributor(s): ______________________________________.
|
|
|
|
*/
|
|
|
|
|
2003-09-26 12:50:59 +02:00
|
|
|
#ifndef DSQL_METD_PROTO_H
|
|
|
|
#define DSQL_METD_PROTO_H
|
2001-05-23 15:26:42 +02:00
|
|
|
|
2006-09-03 03:09:23 +02:00
|
|
|
#include "../common/classes/GenericMap.h"
|
2005-06-14 05:16:54 +02:00
|
|
|
#include "../common/classes/MetaName.h"
|
2006-09-03 03:09:23 +02:00
|
|
|
#include "../common/classes/fb_pair.h"
|
|
|
|
|
2003-02-12 20:28:13 +01:00
|
|
|
// forward declarations
|
2008-02-28 14:48:16 +01:00
|
|
|
namespace Jrd {
|
2009-10-21 02:42:38 +02:00
|
|
|
typedef Firebird::Pair<Firebird::Full<Firebird::MetaName, Firebird::MetaName> > MetaNamePair;
|
|
|
|
typedef Firebird::GenericMap<MetaNamePair> MetaNamePairMap;
|
|
|
|
|
2008-02-28 14:48:16 +01:00
|
|
|
class dsql_req;
|
|
|
|
class dsql_str;
|
2008-05-24 05:19:52 +02:00
|
|
|
class CompiledStatement;
|
2008-02-28 14:48:16 +01:00
|
|
|
};
|
2003-02-12 20:28:13 +01:00
|
|
|
|
2008-04-15 04:18:38 +02:00
|
|
|
void METD_drop_charset(Jrd::dsql_req*, const Firebird::MetaName&);
|
2008-02-28 14:48:16 +01:00
|
|
|
void METD_drop_collation(Jrd::dsql_req*, const Jrd::dsql_str*);
|
2009-10-21 02:42:38 +02:00
|
|
|
void METD_drop_function(Jrd::dsql_req*, const Jrd::dsql_str*, const Firebird::MetaName&);
|
|
|
|
void METD_drop_procedure(Jrd::dsql_req*, const Jrd::dsql_str*, const Firebird::MetaName&);
|
2008-02-28 14:48:16 +01:00
|
|
|
void METD_drop_relation(Jrd::dsql_req*, const Jrd::dsql_str*);
|
2003-02-12 20:28:13 +01:00
|
|
|
|
2008-02-28 14:48:16 +01:00
|
|
|
Jrd::dsql_intlsym* METD_get_charset(Jrd::dsql_req*, USHORT, const char* name); // UTF-8
|
|
|
|
USHORT METD_get_charset_bpc(Jrd::dsql_req*, SSHORT);
|
|
|
|
Firebird::MetaName METD_get_charset_name(Jrd::dsql_req*, SSHORT);
|
|
|
|
Jrd::dsql_intlsym* METD_get_collation(Jrd::dsql_req*, const Jrd::dsql_str*, USHORT charset_id);
|
2008-03-05 09:40:55 +01:00
|
|
|
USHORT METD_get_col_default(Jrd::dsql_req*, const char*, const char*, bool*, UCHAR*, USHORT);
|
2008-02-28 14:48:16 +01:00
|
|
|
Jrd::dsql_str* METD_get_default_charset(Jrd::dsql_req*);
|
2009-06-07 12:16:41 +02:00
|
|
|
bool METD_get_domain(Jrd::dsql_req*, class Jrd::dsql_fld*, const char* name); // UTF-8
|
2008-03-05 09:40:55 +01:00
|
|
|
USHORT METD_get_domain_default(Jrd::dsql_req*, const TEXT*, bool*, UCHAR*, USHORT);
|
2008-02-28 14:48:16 +01:00
|
|
|
bool METD_get_exception(Jrd::dsql_req*, const Jrd::dsql_str*);
|
2009-10-21 02:42:38 +02:00
|
|
|
Jrd::dsql_udf* METD_get_function(Jrd::CompiledStatement*, const Jrd::dsql_str*, const Jrd::dsql_str*);
|
2008-02-28 14:48:16 +01:00
|
|
|
Jrd::dsql_nod* METD_get_primary_key(Jrd::dsql_req*, const Jrd::dsql_str*);
|
2009-10-21 02:42:38 +02:00
|
|
|
Jrd::dsql_prc* METD_get_procedure(Jrd::CompiledStatement*, const Jrd::dsql_str*, const Jrd::dsql_str*);
|
2008-05-24 05:19:52 +02:00
|
|
|
Jrd::dsql_rel* METD_get_relation(Jrd::CompiledStatement*, const Jrd::dsql_str*);
|
2008-02-28 14:48:16 +01:00
|
|
|
bool METD_get_trigger(Jrd::dsql_req*, const Jrd::dsql_str*, Jrd::dsql_str**, USHORT*);
|
2008-05-28 15:22:26 +02:00
|
|
|
bool METD_get_type(Jrd::dsql_req*, const Jrd::dsql_str*, const char*, SSHORT*);
|
2008-05-24 05:19:52 +02:00
|
|
|
Jrd::dsql_rel* METD_get_view_base(Jrd::CompiledStatement* request,
|
2006-09-03 03:09:23 +02:00
|
|
|
const char* view_name, // UTF-8
|
2009-10-21 02:42:38 +02:00
|
|
|
Jrd::MetaNamePairMap& fields);
|
2008-05-24 05:19:52 +02:00
|
|
|
Jrd::dsql_rel* METD_get_view_relation(Jrd::CompiledStatement* request,
|
2004-03-07 08:58:55 +01:00
|
|
|
const char* view_name, // UTF-8
|
2008-02-28 14:48:16 +01:00
|
|
|
const char* relation_or_alias); // UTF-8
|
2003-02-12 20:28:13 +01:00
|
|
|
|
2003-09-26 12:50:59 +02:00
|
|
|
#endif // DSQL_METD_PROTO_H
|
2003-09-29 14:43:14 +02:00
|
|
|
|