Am Sonntag 19 Dezember 2004 16:49 schrieb stephan beal:
> This does this trick, in fetch():
>
> default:
> {
> if(field_val)
> {
> std::string buff( field_val, field_val +
> field->length );
> val = new SQLString(buff.c_str());
> }
> else
> {
> val = new SQLString();
> }
> }
Cool. However i would like to add an SQLUnknown class for unsupported SQL
fields. TEXT in mysql driver should become a SQLString.
>
>
> (also #include <string>)
>
> IMO this is suitable for time fields, as well, because they're all just
> strings in the end.
>
> Now s11n has a psql-powered db layer. In theory it'll support any
> compatible db layer, configurable via command-line args to s11nconvert.
>
> Convert file to db:
>
> stephan@owl:~/cvs/s11n.net/ps11n/src> s11nconvert -f in.s11n -s psql -o
> one --psql-verbose
> PSqlSerializer.cpp:42 : psql-verbose mode is on.
> PSqlSerializer.cpp:52 : Proxy Serializer = [compact].
> PSqlSerializer.cpp:65 : Connecting to database [localhost]...
> PSqlSerializer.hpp:133 : serialize(node,[one])...
> PSqlSerializer.hpp:144 : driver=mysql, @0x8070be0
>
> Pull object from db:
>
> stephan@owl:~/cvs/s11n.net/ps11n/src> s11nconvert -S psql -f one -s
> expat --psql-verbose
> PSqlSerializer.cpp:42 : psql-verbose mode is on.
> PSqlSerializer.cpp:52 : Proxy Serializer = [compact].
> PSqlSerializer.cpp:65 : Connecting to database [localhost]...
> PSqlSerializer.hpp:82 : deserialize(one) from
> mysql://stephan:xxxx@localhost/ps11n
> PSqlSerializer.hpp:88 : driver=mysql, @0x8070c10
> PSqlSerializer.hpp:110 : Buffered 191 bytes.
> PSqlSerializer.hpp:72 : Deser from stream...
> <!DOCTYPE s11n::io::expat_serializer>
> <data_node class="list">
> <data_node class="lex_t">
> <v>42</v>
> </data_node>
> <data_node class="lex_t">
> <v>-42.420000</v>
> </data_node>
> <data_node class="lex_t">
> <v>fourty two</v>
> </data_node>
> <data_node class="lex_t">
> <v>x</v>
> </data_node>
> </data_node>
|