---
name: "DEFINE"
section: "7"
platform: "linux"
package: "slony1-doc"
version: "1.2.15-1"
release: "Debian 5.0 (Lenny)"
platforms: ["linux"]
url: "https://new.carta.tech/DEFINE"
---

# DEFINE(7)

Defining a named symbol

## NAME

DEFINE - Defining a named symbol

## SYNOPSIS

**define**  \[ *name* \] \[ *value* \]

## DESCRIPTION

This defines a named symbol. Symbol names must follow the slonik rules for constructing identifiers, by starting with a letter, followed by letters, numbers, and underscores.

Symbol values may contain spaces and may recursively contain symbol references.

Symbols are referenced by using a ‘@’ followed by the symbol name. Note that symbol referencing is suppressed inside string literals.

## EXAMPLE

```
FCdefine    cluster movies;
define    sakai   1;
define    chen    2;
define    fqn     fully qualified name;
cluster name = @cluster;
node @sakai admin conninfo = 'service=sakai-replication';
node @chen  admin conninfo = 'service=chen-replication';
define setMovies    id = 1;
define sakaiMovies  @setMovies, origin = @sakai;
create set ( @sakaiMovies, comment = 'movies' );
set add table( set @sakaiMovies, id = 1, @fqn = 'public.customers',
               comment = 'sakai customers' );
set add table( set @sakaiMovies, id = 2, @fqn = 'public.tapes',
               comment = 'sakai tapes' );
echo 'But @sakaiMovies will display as a string, and is not expanded';
    F[0]
```

## VERSION INFORMATION

This command was introduced in Slony-I 1.1
