# Sybase + Ror + quasi fatta

**URL:** <https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533>\
**Category:** IT\
**Created:** [September 18, 2006, 6:50pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533 "2006-09-18T18:50:37Z")\
**Posts on this page:** 9\
**Page:** 1

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 18, 2006, 6:50pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/1 "2006-09-18T18:50:37Z")

</div>

Ciao a tutti,  
tempo fa mi lamentavo del fatto che non riuscivo ad utlizzare Sybase con  
Ror  
(SQL Anywhere 9)…sono riuscito a connettermi finalmente e a generare  
gli  
scaffold (a proposito ringrazio David e Antonio per la collaborazione).  
Il problema è che mi devo connettere ad un DB progettato molto tempo fa e  
che quindi non segue le regole di Ror sui nomi delle tabelle e delle  
chiavi.  
Ho letto il documento "  
[Peak Obsession](http://wiki.rubyonrails.com/rails/pages/HowToUseLegacySchemas)" ma  
sinceramente mi son perso e non capisco alcune cose. Prima di combattere  
contro i mulini a vento e rigettarmi sul documento vorrei chiedervi se è  
possibile usare un DB legacy oppure è una speranza vana. Ci sono  
particolare  
problemi?  
Scusate i pochi dettagli ma devo valutare Ror in azienda per  
(eventualmente)  
gettare alle ortiche [dot.net](http://dot.net) e mi rimane pochissimo tempo per dare una  
risposta. Se supero il problema dei DB legacy penso che sia praticamente  
fatta però :-)))

Grazie  
Ciao  
Maurizio

P.S se interessa io ho risolto il problema dell’utilizzo di Sybase Sql  
Anywhere 9 utilizzando l’adapter “sybaseanywhere\_adapter”. L’errore che  
commettevo è che l’adapter che viene installato va bene per ASE e non per  
l’ASA…

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 18, 2006, 8:58pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/2 "2006-09-18T20:58:49Z")

</div>

Wow. Anch’io ho lo stesso problema. Cioè, ho un DB Sybase (versione 6  
credo) e vorrei connettermici da ruby (rails, ma non solo). Avevo visto  
che il driver che c’era andava bene per ASE e non per ASA e avevo pure  
cominciato a ravannare nel codice C del extension PHP per capire se  
potevo usarlo per farne uno per ruby…

Mica potresti descrivere un po’ più nel dettaglio come hai fatto?

I DB legacy si possono usare e anche piuttosto bene. Dai un’occhiata a  
“composite\_primary\_keys” (è un gem) che ti permette di usare db con  
chiavi primari multipli. Quello è uno dei problemi più comuni nel uso di  
DB vecchi.

ActiveRecord è piuttosto duttile alla fine, è solo che gli sviluppatori  
non amano darlo troppo a vedere!

maurizio maurizio wrote:

> [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/HowToUseLegacySchemas)" ma  
> Grazie  
> [http://lists.ruby-it.org/mailman/listinfo/ml](http://lists.ruby-it.org/mailman/listinfo/ml)

–  
“Remember, always be yourself. Unless you suck.” - Joss Whedon

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 19, 2006, 8:44pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/3 "2006-09-19T20:44:11Z")

</div>

Ciao,  
io ho fatto nel seguente modo. Premetto che ho eseguito le prove su una  
vecchia macchina con WIN2000 e SQL Anywhere Studio 9.0. Accedo al DB  
tramite ODBC (un DSN di sistema).  
Come dicevo ho installato il “sybaseanywhere\_adapter” ed ho seguito le  
istruzioni del documento  
“[http://wiki.rubyonrails.org/rails/pages/SybaseASA](http://wiki.rubyonrails.org/rails/pages/SybaseASA)” fino a quando  
parla di Web service. In particolare ho settato il file “database.yml”  
nel seguente modo:  
adapter: sybaseanywhere  
dsn: Nome dsn  
username: dba (quella di default)  
password: sql (quella di default)  
host: localhost  
mode: ODBC

Tieni presente che l’ultima riga Ã¨ fondamentale se vuoi accedere tramite  
ODBC. Non solo ma dal documento sembra sia NECESSARIA la versione 9.0  
dell’ASA.  
Ha funzionato tutto al primo tentativo 🙂  
Spero di esserti stato utile, fammi sapere se ci sei riuscito.

Ciao  
Maurizio

david wrote:

> Wow. Anch’io ho lo stesso problema. Cioï¿½, ho un DB Sybase (versione 6  
> credo) e vorrei connettermici da ruby (rails, ma non solo). Avevo visto  
> che il driver che c’era andava bene per ASE e non per ASA e avevo pure  
> cominciato a ravannare nel codice C del extension PHP per capire se  
> potevo usarlo per farne uno per ruby…
> 
> Mica potresti descrivere un po’ piï¿½ nel dettaglio come hai fatto?
> 
> I DB legacy si possono usare e anche piuttosto bene. Dai un’occhiata a  
> “composite\_primary\_keys” (ï¿½ un gem) che ti permette di usare db con  
> chiavi primari multipli. Quello ï¿½ uno dei problemi piï¿½ comuni nel uso di  
> DB vecchi.
> 
> ActiveRecord ï¿½ piuttosto duttile alla fine, ï¿½ solo che gli sviluppatori  
> non amano darlo troppo a vedere!
> 
> maurizio maurizio wrote:
> 
> > [Peak Obsession](http://wiki.rubyonrails.com/rails/pages/HowToUseLegacySchemas)" ma  
> > Grazie  
> > [http://lists.ruby-it.org/mailman/listinfo/ml](http://lists.ruby-it.org/mailman/listinfo/ml)
> 
> –  
> “Remember, always be yourself. Unless you suck.” - Joss Whedon

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 19, 2006, 11:21pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/4 "2006-09-19T23:21:14Z")

</div>

Un saluto cordiale a tutti da parte di un nuovo entrato nel mondo di  
Ruby (provenienza C#).  
E ora la classica domandina da niubbo:

nome = gets  
print “ciao “,“pippo”,”!”  
print “ciao “, nome,”!”

L’output di questo semplicissimo programmino Ã¨ il seguente:

ciao pippo!ciao pippo  
!

Il punto esclamativo nel secondo print me lo trovo a capo…in pratica Ã¨  
come se mi portassi dietro l’enter che ho dato per acquisire la  
variabile nome. Esiste un modo semplice per evitare questo per me strano  
comportamento?  
Grazie e scusate per la banalitÃ del quesito

–Renato

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 19, 2006, 11:35pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/5 "2006-09-19T23:35:15Z")

</div>

quando fai un gets ti porti dietro anche l’enter premuto dall’utente 🙂

fai un chop sul nome e dovresti poterlo buttare via… nome.chop

On 9/19/06, Renato [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> 

## – Chiaroscuro

Liquid Development: [http://liquiddevelopment.blogspot.com/](http://liquiddevelopment.blogspot.com/)

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 19, 2006, 11:37pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/6 "2006-09-19T23:37:15Z")

</div>

Funziona, grazie 🙂  
Ora mi vado a cercare qualcosa su questo chop…  
Un saluto.

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 20, 2006, 9:34am UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/7 "2006-09-20T09:34:04Z")

</div>

Ok. Appena ho un attimo di tempo farÃ² delle prove. La mia situazione Ã¨  
piÃ¹ incasinata perÃ²:

- DB della versione sbagliata (ma anche per PHP dice che funziona solo  
con v9 in sÃ¹, ma poi invece va lo stesso con 'sto canchero che abbiamo  
noi)
- sono su Linux, quindi “DSN di sistema” e ODBC Ã¨ un po’ piÃ¹ incasinato  
(o mi sbaglio? forse Ã¨ facilissimo)
- il DB Ã¨ lontano, fuori controllo e per politiche interne non posso  
sperare in molti aiuti. Ho un utente e un IP e basta, quindi le prove si  
fanno alla cieca…

Racconto queste cose per dire che spesso i problemi con “database  
legacy” spesso non sono tecnici. PerchÃ© non aggiornare il DB? PerchÃ© non  
posso parlare con i tecnici dall’altra parte della cittÃ liberamente?

:-/

Comunque farÃ² il tentativo! Usare PHP solo perchÃ© sa parlare con Sybase  
pare STUPIDO.

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 25, 2006, 9:03am UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/8 "2006-09-25T09:03:33Z")

</div>

Lo farÃ² senz’altro!

---

<div class="post-metadata">

**Author:** ![maurizio\_maurizio](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/m/ec9cab/32.png) [@maurizio\_maurizio](https://www.ruby-forum.com/u/maurizio_maurizio)\
**Post date:** [September 23, 2006, 6:47pm UTC](https://www.ruby-forum.com/t/sybase-ror-quasi-fatta/102533/9 "2006-09-23T18:47:25Z")

</div>

Ciao, in effetti la tua situazione non mi sembra affatto semplice.  
Comunque ti chiederei di divulgare quello che eventualmente scopri via  
via perchÃ¨ penso sia di interesse a molti.  
Grazie  
Ciao  
Maurizio

david wrote:

> Ok. Appena ho un attimo di tempo farÃ² delle prove. La mia situazione Ã¨  
> piÃ¹ incasinata perÃ²:
> 
> - DB della versione sbagliata (ma anche per PHP dice che funziona solo  
> con v9 in sÃ¹, ma poi invece va lo stesso con 'sto canchero che abbiamo  
> noi)
> - sono su Linux, quindi “DSN di sistema” e ODBC Ã¨ un po’ piÃ¹ incasinato  
> (o mi sbaglio? forse Ã¨ facilissimo)
> - il DB Ã¨ lontano, fuori controllo e per politiche interne non posso  
> sperare in molti aiuti. Ho un utente e un IP e basta, quindi le prove si  
> fanno alla cieca…
> 
> Racconto queste cose per dire che spesso i problemi con “database  
> legacy” spesso non sono tecnici. PerchÃ© non aggiornare il DB? PerchÃ© non  
> posso parlare con i tecnici dall’altra parte della cittÃ liberamente?
> 
> :-/
> 
> Comunque farÃ² il tentativo! Usare PHP solo perchÃ© sa parlare con Sybase  
> pare STUPIDO.
