Search Postgresql Archives

Re: UUID as primary key

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Thanks, I've gotten this working nicely now (after some offline
exchanges with Harald).

In JDBC, inet values can be read a couple of ways -- the easiest is to
call ResultSet.getString().  And to write them, the easiest is to use
prepared statements of the form

  INSERT INTO xxx VALUES (?::inet, ...)
  SELECT * FROM xxx WHERE uuid = ?::inet

filling the parameters in with PreparedStatement.setString().

This is clearly a viable solution -- I'd be interested to hear from
others as well.

    Vance

On Tue, 2006-08-22 at 17:14 +0200, Harald Armin Massa wrote:
> Vance,
> 
> nice that it was of help.
> 
>         (When going from Java to the database, for example, it's 
>         easiest to compose the value directly into the SQL query
>         rather than
>         using a parameter.)  This seems quite viable.
> 
> Please allow me to recommend to you to NOT go this seemingly easy way.
> I went there myself (but did it in Python and PHP) some years ago,
> when I was young and needed the money. 
> 
> Those "put Data into your SQL Statements with String Substitution" is
> easy to get working in the first step; but gets very very hard to keep
> correct in the long run. Please google up topics like "SQL injection"
> and "escaping characters for SQL" - it is a source of endless
> frustration. 
> 
> 
> Another tip to deal with GUIDs in applications: 
> Because GUIDs are rather long when expressed in base16 (hexadecimal
> notion), I made a transformer to Base62, using numbers and all regular
> letters. That shortens the typical GUID from 32chars to 21chars. 
> 
> Harald
>  
> 
> -- 
> GHUM Harald Massa
> persuadere et programmare
> Harald Armin Massa
> Reinsburgstraße 202b
> 70197 Stuttgart
> 0173/9409607
> -
> Let's set so double the killer delete select all.


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux