COPY cümlesi BINARY veya CSV seçenekleri olmaksızın kullanılırken, verinin okunması veya yazılmasında, bir metin dosyasının her satırına bir tablonun bir satırı karşılık getirilir. Bir satırdaki sütunlar ayraç karakteri ile ayrılırlar. Sütunların değerleri ya çıktı işlevleri tarafından üretilmiş ya da girdi işlevleri tarafından özniteliklerinin veri türünde oldukları kabul edilen dizgelerdir. Belirtilen boş dizgeler sütunlara NULL değerler olarak yerleştirilir. Eğer girdi dosyasının bir satırı umulandan daha az ya da daha fazla sütun içeriyorsa, COPY FROM bir hata oluşturacaktır. Eğer OIDS belirtilmişse, nesne kimliği, veri sütunlarından önce, ilk sütun olarak okunur ya da yazılır.
Verinin sonu sadece bir tersbölü ve nokta (\.) içeren tek bir satırla ifade edilebilir. Veri dosyadan okunurken veri sonunun imlenmesi, dosya sonu zaten iyi algılanabildiğinden gerekli değildir; sadece 3.0 öncesi istemci protokolünü kullanan istemci uygulamaları ile veri kopyalanırken gerekli olur.
Sütun verisi içinde ayraç ve tırnak karakterleri kullanılırken, bunların ayraç ve tırnak karakterleri olarak algılanmaması için tersbölü karakteri (\) bunları öncelemekte kullanılabilir. Bir sütun değerinin içinde yer aldığında bir tersbölü ile öncelenmesi gereken karakterler şunlardır: tersbölü karakterinin kendisi, satırsonu, satırbaşı karakterleri ile ayraç ve tırnak olarak kullanılan karakterler.
Belirtilmiş bir boş dizge COPY TO tarafından tersbölü eklenmeden gönderilir; bunun aksine, COPY FROM girdi olan boş dizgeyi tersbölüleri silmeden önce eşleştirir. Bu nedenle, \N gibi bir boş dizge aslında bir veri değeri olan \N ile karışmaz (\\N olarak ifade edildiğinden).
COPY FROM tarafından tanınan tersbölü öncelemeli dizgeler:
Dizge Anlamı
-------- ---------------------------------------
\b Terbölü (ASCII 8)
\f Sayfa ileri (ASCII 12)
\n Satırsonu (ASCII 10)
\r Satırbaşı (ASCII 13)
\t Sekme (ASCII 9)
\v Düşey sekme (ASCII 11)
\rakamlar tersbölüden sonra gelen sekizlik tabandaki üç rakam
bir karakterin sayısal değerini belirtir
Şu an, COPY TO tersbölü karakterini izleyen sekizlik rakamlar çıktılamayacak, ama yukarıda listelenmiş diğer dizgeleri kullanacaktır.
Yukarıdaki listede belirtilmemiş ama terbölü öncelemeli olarak belirtilmiş başka karakterler de olabilir, bu karakterler kendileri olarak değerlendirilecektir. Yine de tersbölülerin gereksiz yere kullanılmasından kaçınılmalıdır, çünkü istemeden veri sonunu imleyen \. ile boş dizgeyi imleyen \N dizgeleri üretilebilir. Bu dizgeler, bir tersbölü işlemi yapılmadan önce algılanmaya çalışılacaktır.
COPY için veri üreten uygulamaların veri içindeki satırsonu ve satırbaşı karakterlerini mutlaka \n ve \r dizgelerine dönüştürerek döndürmeleri önerilir. Şimdilik bu karakterler bu dizgelerle gösterilebiliyor olsa da ileride bu gösterimler kabul edilmeyebilir. Ayrıca bu karakterler, bilhassa dosyanın farklı makineler arasında aktarılması sırasında (örneğin, Unix ile Windows) bozulmalara yol açabilir.
COPY TO her satırı Unix tarzı satırsonu ("\n") ile sonlandıracaktır. Microsoft Windows üzerinde çalışan sunucular ise bunun yerine satırbaşı/satırsonu ("\r\n") çıktılayacaktır, fakat sadece bir sunucu dosyasına kopyalama için; platformlar arasında tutarlılığı sağlamak için COPY TO STDOUT sunucu platformundan bağımsız olarak daima "\n" gönderecektir. COPY FROM satırsonları ister satırbaşı, ister satırsonu, ister satırbaşı/satırsonu ile bitsin, satırları düzgün olarak elde edebilir. Veri içinde tersbölü ile öncelenmemiş satırsonu ve satırbaşı karakterlerinden dolayı hata oluşması riskini en aza indirmek için COPY FROM satırsonlarının beklendiği gibi bitmediğinden şikayet edecektir.