{"id":21734900,"url":"https://github.com/santana/ruby-informix","last_synced_at":"2025-10-10T11:17:04.366Z","repository":{"id":393434,"uuid":"11276","full_name":"santana/ruby-informix","owner":"santana","description":"Ruby library for IBM Informix","archived":false,"fork":false,"pushed_at":"2017-04-26T21:56:23.000Z","size":241,"stargazers_count":17,"open_issues_count":2,"forks_count":5,"subscribers_count":3,"default_branch":"master","last_synced_at":"2025-05-13T05:28:38.617Z","etag":null,"topics":["informix","ruby","ruby-library"],"latest_commit_sha":null,"homepage":"http://ruby-informix.rubyforge.org","language":"eC","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/santana.png","metadata":{"files":{"readme":"README.md","changelog":"Changelog","contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2008-04-20T03:16:01.000Z","updated_at":"2024-05-04T22:23:53.000Z","dependencies_parsed_at":"2022-07-07T13:35:28.374Z","dependency_job_id":null,"html_url":"https://github.com/santana/ruby-informix","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/santana/ruby-informix","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santana%2Fruby-informix","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santana%2Fruby-informix/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santana%2Fruby-informix/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santana%2Fruby-informix/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/santana","download_url":"https://codeload.github.com/santana/ruby-informix/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/santana%2Fruby-informix/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259787668,"owners_count":22911258,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["informix","ruby","ruby-library"],"created_at":"2024-11-26T05:11:06.231Z","updated_at":"2025-10-10T11:16:59.316Z","avatar_url":"https://github.com/santana.png","language":"eC","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Ruby/Informix -- Ruby library for connecting to IBM Informix.\n\n## Motivation\nRead about [the situation that started it all](http://santanatechnotes.blogspot.com/2006/03/informix-driver-for-ruby.html).\n\n## Download\n\nThe latest version of Ruby/Informix can be found at http://rubyforge.org/projects/ruby-informix\n\n## Supported platforms\n\nRuby/Informix has been tested succesfully with Informix 7 and above, and\nInformix CSDK 2.81 and above, on the following platforms:\n\n    Operating System     Architecture\n    -----------------------------------------\n    Solaris              SPARC64      \n    Mac OS X             x86-64\n    GNU/Linux            x86, x86-64\n    Windows XP/2000      x86\n    HP-UX 11.11          PA-RISC 2.0 64-bit\n\nSend me an e-mail if you have [un]succesfully tested Ruby/Informix on another\nplatform.\n\n## Installation\n\n### Requirements\n\n* Informix CSDK 2.81 or above\n\nIf you want to build Ruby/Informix instead of installing a precompiled gem,\nyou will also need:\n\n* Microsoft Visual Studio 6.0, for Windows or\n* an ANSI C compiler, for UNIX and Linux\n\n### Rubygem installation\n\n    gem install ruby-informix\n\n### From source\n\nSet your INFORMIXDIR environment variable and run:\n\n    rake gem\n    sudo -E gem install ruby-informix*.gem\n\n## Documentation\n\nRDoc and ri documentation is automatically installed. It can also be found\n[online](http://ruby-informix.rubyforge.org/doc)\n\n## Examples\n\n*Note*: set LD\\_LIBRARY\\_PATH (non-macOS) or DYLD\\_LIBRARY\\_PATH (macOS) to\nsearch in $INFORMIXDIR/lib and $INFORMIXDIR/lib/esql before loading the gem.\n\n### Connecting to a database\n\n    db = Informix.connect('stores')\n\n### Traversing a table\n\n    db.foreach('select * from stock') do |r|\n      # do something with the record\n    end\n\n### Fetching all records from a table\n\n    records = db.cursor('select * from stock') do |cur|\n      cur.open\n      cur.fetch_all\n    end\n\n### Inserting records\n\n    stmt = db.prepare('insert into state values(?, ?)')\n    stmt.execute('CA', 'California')\n    stmt.call('NM', 'New Mexico')\n    stmt['TX', 'Texas']\n\n### Iterating over a table using a hash (shortcut)\n\n    db.foreach_hash('select * from customers') do |cust|\n      puts \"#{cust['firstname']} #{cust['lastname']}\"\n    end\n\nMore examples can be found at:\n\nhttp://ruby-informix.rubyforge.org/examples.html\n\n\n## Data types supported\n\n    Informix                          Ruby\n    --------------------------------------------------------\n    SMALLINT, INT, INT8, FLOAT,      Numeric\n    SERIAL, SERIAL8\n    CHAR, NCHAR, VARCHAR, NVARCHAR   String\n    DATE                             Date\n    DATETIME                         Time\n    INTERVAL                         Informix::IntervalYTM,\n                                     Informix::IntervalDTS\n    DECIMAL, MONEY                   BigDecimal\n    BOOL                             TrueClass, FalseClass\n    BYTE, TEXT                       StringIO, String\n    CLOB, BLOB                       Informix::Slob\n\n\nNULL values can be inserted and are retrieved as +nil+.\n\nAny IO-like object that provides a read method, e.g. StringIO or File objects,\ncan be used to insert data in BYTE or TEXT fields. Data retrieved from\nBYTE and TEXT fields are stored in String objects.\n\nStrings can be used where Informix accepts them for non-character data types,\nlike DATE, DATETIME, INTERVAL, BOOL, DECIMAL and MONEY\n\n\n## Recommendations\n\n* Use blocks to release Informix resources automatically as soon as possible.\n  Alternatively, use #free.\n* You can optimize cursor execution by changing the size of fetch and insert\n  buffers, setting the environment variable FET\\_BUF\\_SIZE to up to 32767.\n\n\n## Support\n\nFeel free to send me bug reports, feature requests, comments, patches or\nquestions directly to my mailbox or via github.\n\n## Presentations and articles about Ruby/Informix\n\n* [Talking with Perl, PHP, Python, Ruby to IDS](http://www.informix-zone.com/informix-script-dbapi), Eric Herber, The Informix Zone.\n* [Informix on Rails](http://www.ibm.com/developerworks/blogs/page/gbowerman?entry=informix_on_rails), Guy Bowerman, IBM developerWorks Blogs: Informix Application Development.\n* [Ruby/Informix, and the Ruby Common client](http://www.ibm.com/developerworks/blogs/page/gbowerman?entry=ruby_informix_and_the_ruby), Guy Bowerman, IBM developerWorks Blogs: Informix Application Development.\n* [Using IBM Informix Dynamic Server on Microsoft Windows, Part 6](http://www.ibm.com/developerworks/offers/lp/demos/summary/usingids6.html), Akmal B. Chaudhri, IBM developerWorks: On demand demos.\n\n## License\n\nRuby/Informix is available under the three-clause BSD license\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantana%2Fruby-informix","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsantana%2Fruby-informix","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsantana%2Fruby-informix/lists"}