Sybase 12.4.2 manual 179

Models: 12.4.2

1 536
Download 536 pages 20.34 Kb
Page 199
Image 199

CHAPTER 5 Moving Data In and Out of Databases

• If a backslash (\) precedes the characters n, x, or \ it is considered an escape character. For this reason, to indicate directory paths in Windows NT systems, you must represent the backslash character by two backslashes if the next character is any of those listed. (It is always safe to double the backslashes.) Therefore, the statement to load data from the file c:\newinput.dat into the employee table is:

LOAD TABLE employee

FROM ’c:\\newinput.dat’ ...

 

• The pathname is relative to the database server, not to the client

 

application. If you are running the statement on a database server on some

 

other computer, the directory name refers to directories on the server

 

machine, not on the client machine. The input file for the load must be on

 

the server machine.

 

Named pipes

The file specification can be a named pipe. When you load from a named pipe

 

(or FIFO) on Windows NT, the program writing to the pipe must close the pipe

 

in a special way. The pipe writer must call FlushFileBuffers( ) and then

 

DisconnectNamedPipe( ). (If you do not, Adaptive Server IQ reports an

 

exception from hos_io::Read( ).) This issues a PIPE_NOT_CONNECTED

 

error, which notifies Adaptive Server IQ that the pipe was shut down in an

 

orderly manner rather than an uncontrolled disconnect. See Microsoft

 

documentation for details on these calls.

Specifying table-wide

You can specify several options that describe the format of input data.

format options

FORMAT option You can specify a default format for table columns, which

 

 

applies if you omit the column-spec. The same formats that can appear in the

 

column-speccan appear here. If you also omit the FORMAT load option, the file

 

is assumed to be binary.

 

 

DELIMITED BY option

If you omit a column delimiter in the column-spec

definition, the default column delimiter character is a comma. You can specify an alternative column delimiter by providing a string consisting of one to four ASCII characters, or the hexadecimal representation for a character. The same formatting requirements apply as to other SQL strings. In particular, to specify tab-delimited values use the hexadecimal ASCII code of the tab character (9), as follows:

...DELIMITED BY ’\x09’ ...

To use the newline character as a delimiter, you can specify either the special combination '\n' or its ASCII value '\x0a'.

179

Page 199
Image 199
Sybase 12.4.2 manual 179