Hello, 

according to my observations and tests, it looks like, that the latest 
stable H2, 1.3.176, has a bug or missing capability or documented 
limitation. All about one thing - separator of lines of CSV file to be read 
using csvread. Let assume following code: 

create table t1 (id int, name varchar(255)); 
insert into t1 (id, name) values (01, 'a'); 
insert into t1 (id, name) values (02, 'b'); 
select * from t1;

-- OK 
call csvwrite('C:\temp\temp\logdb\test3.txt', 'select * from t1', 
'charset=UTF-8 fieldSeparator=x fieldDelimiter= lineSeparator=y');
-- not OK
select * from csvread('C:\temp\temp\logdb\test3.txt', null, 'charset=UTF-8 
fieldSeparator=x fieldDelimiter= lineSeparator=y');

The latest command interprets the output of previous command wrong. 

Use case ~ why I want it. Very detailed explanation is described at How to 
put into the CSV (text) output of XSL-T 2.0 transformation XML illegal 
characters like 1E “record separator” and 1F “unit separator”? 
<http://stackoverflow.com/questions/25669441/how-to-put-into-the-csv-text-output-of-xsl-t-2-0-transformation-xml-illegal-ch>
 
article of StackOverflow. Shortly: while fast processing huge load of (let 
say XML) input data to produce CSV, it is very inefficient to use string 
replace-like functions to escape double quotes etc. I would like to use (in 
case of XML 1.0) column and row separators ~ single characters, that could 
not never appear in the source. So my choice in case of XML 1.0 are 1E and 
1F. 

I also think, that it could be consistent, that if csvwrite has such 
capability, csvread does not. I already rise such feature request years ago 
in the thead of this group 
<https://groups.google.com/forum/#!searchin/h2-database/rowSeparator/h2-database/p7IFChKiNiQ/B80TRyBf4UkJ>.
 
Till now, I was able to bypass it using string-replace functions using awk, 
xsl-t etc. but not know, because replacing is very time consuming. 

Thank You in advance for your answer, Stepan 

P.S.: What is the difference between lineSeparator and rowSeparator in 
csvOprtion? 

-- 
You received this message because you are subscribed to the Google Groups "H2 
Database" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to h2-database+unsubscr...@googlegroups.com.
To post to this group, send email to h2-database@googlegroups.com.
Visit this group at http://groups.google.com/group/h2-database.
For more options, visit https://groups.google.com/d/optout.

Reply via email to