You are here: Symbol Reference > Classes > TLz_Attr Class
ContentsIndexHome
PreviousUpNext
TLz_Attr Class
File

u_nodes

Pascal
TLz_Attr = class(TLz_node);
Description

 

TLz_Attr represents a dot separated name, or just a single name. 

Usually, it represents a database object like table, field, function name, etc... 

 

relname is the first source token of identifier. 

Take identifier: server.database.schema_name.object_name for example, relname points to "server". 

 

attrs stores source tokens in identifier except first one. Take identifier: server.database.schema_name.object_name for example, attrs includes "database", 

"schema_name", and "object_name". 

 

If identifier is a single name like this: object_name, then relname stores source token of object_name, and attrs is empty. 

 

If attr is a dot separated name like this: schema_name.object_name, then relname -> schema_name , and attrs[0] -> object_name. 

 

If attr is a dot separated name like this: database.schema_name.object_name, then relname -> database , and attrs[0] -> schema_name, attrs[1] -> object_name. 

 

If attr is a dot separated name like this: server.database.schema_name.object_name, then relname -> server , and attrs[0] -> database,attrs[1] -> schema_name, attrs[2] -> object_name. 

 

You can also fetch database object info use following properties: ServerNameToken, DatabaseNameToken, SchemaNameToken, ObjectNameToken, ColumnNameToken,ObjectPropertyNameToken, ObjectMethodNameToken. 

 

If a token is ObjectNameToken, then you can use DBObjType to determine what database object is this token stands for. 

 

For example: 

server.database.schema_name.object_name 

TLz_Attr.ObjectNameToken->object_name 

TLz_Attr.SchemaNameToken->schema_name 

TLz_Attr.DatabaseNameToken->database 

TLz_Attr.ServerNameToken->server 

 

server.database..object_name 

TLz_Attr.ObjectNameToken->object_name 

TLz_Attr.SchemaNameToken-> empty text 

TLz_Attr.DatabaseNameToken->database 

TLz_Attr.ServerNameToken->server 

 

server..schema_name.object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName->schema_name 

TLz_Attr.DatabaseNameToken->empty text 

TLz_Attr.ServerName->server 

 

server...object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName->empty text 

TLz_Attr.DatabaseNameToken->empty text 

TLz_Attr.ServerName->server 

 

database.schema_name.object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName->schema_name 

TLz_Attr.DatabaseName->database 

TLz_Attr.ServerName-> null 

 

database..object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName->empty text 

TLz_Attr.DatabaseName->database 

TLz_Attr.ServerName-> null 

 

schema_name.object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName->schema_name 

TLz_Attr.DatabaseName-> null 

TLz_Attr.ServerName-> null 

 

object_name 

TLz_Attr.ObjectName->object_name 

TLz_Attr.SchemaName-> null 

TLz_Attr.DatabaseName-> null 

TLz_Attr.ServerName-> null

Hierarchy
Related Information
Gudu software http://www.sqlparser.com
Send comments about this topic.