# Recommendations for ODBC

**URL:** https://discourse.julialang.org/t/recommendations-for-odbc/1279
**Category:** Data
**Created:** [January 4, 2017, 2:34pm UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279 "2017-01-04T14:34:54Z")
**Posts on this page:** 7
**Page:** 1

<div class="post-metadata">

### Author: ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)
#### Post date: [January 4, 2017, 2:34pm UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/1 "2017-01-04T14:34:54Z")

</div>

I need to decide (soon) between using the ODBC.jl package, or using ODBC via PyCall.jl.  
Back mid 2015, we’d looked at ODBC.jl, but it wasn’t ready at that point, and we ended up making our own MariaDB/MySQL wrapper for what we needed then, but now we really do need ODBC support.  
I do know that a lot of work has gone into ODBC in the last year and a half, and would appreciate any guidance.

Thanks in advance for any help!

---

<div class="post-metadata">

### Author: ![Tem\_Pl](https://avatars.discourse-cdn.com/v4/letter/t/8dc957/32.png) [@Tem\_Pl](https://discourse.julialang.org/u/Tem_Pl)
#### Post date: [January 4, 2017, 3:51pm UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/2 "2017-01-04T15:51:11Z")

</div>

ODBC via pycall sounds awfully slow.

---

<div class="post-metadata">

### Author: ![StefanKarpinski](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/stefankarpinski/32/24_2.png) [@StefanKarpinski](https://discourse.julialang.org/u/StefanKarpinski)
#### Post date: [January 4, 2017, 5:22pm UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/3 "2017-01-04T17:22:52Z")

</div>

I don’t have any recent experience with ODBC.jl but it was fairly usable already several years ago, aside from some fairly problematic cross-platform encoding issues, but I believe that @quinnj has addressed those with a significant rewrite since then. I suspect at this point it’s ready or close enough that a little bit of work can get it all the way there for your use case.

---

<div class="post-metadata">

### Author: ![quinnj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/quinnj/32/11_2.png) [@quinnj](https://discourse.julialang.org/u/quinnj)
#### Post date: [January 4, 2017, 5:48pm UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/4 "2017-01-04T17:48:18Z")

</div>

A largish rewrite happened about 6 months ago, that resolved almost all outstanding issues on the repo. Since then, things have been more stable. There are a few issues currently open that I’m planning on addressing soon, but nothing major (a few DB-specific issues, for example).

Depending on your timeline, I’m also hoping to be able to abolish the `WeakRefStrings` package with Jeff’s faster String allocation PR merging soon. That would simplify the package and some of the “riskiest” code IMO.

Happy to address any specific issues/concerns at the repo through issues.

---

<div class="post-metadata">

### Author: ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)
#### Post date: [January 5, 2017, 3:17am UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/5 "2017-01-05T03:17:47Z")

</div>

Yes, the problems back when we looked at it were because we needed to have support for decimal floating point and some issues with handling string encodings, and yes, I know that Jacob’s been doing a lot of great work on ODBC (and CSV!) since then. I really would prefer to use a pure Julia implementation!

---

<div class="post-metadata">

### Author: ![ScottPJones](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/scottpjones/32/146_2.png) [@ScottPJones](https://discourse.julialang.org/u/ScottPJones)
#### Post date: [January 5, 2017, 3:27am UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/6 "2017-01-05T03:27:27Z")

</div>

I noticed that v0.4.x tests were removed, is ODBC.jl still supported for v0.4.x?  
If not, I’ll use this to push up us moving to v0.5.0 (and as soon as possible to v0.6.0, esp. if, as you said, you’ll be able to deal with the `WeakRefStrings` after Jeff’s [much anticipated by me!] String PR gets merged).  
I’ll be happy to contribute issues and/or PRs if we do run into any problems.  
[BTW, thanks for the continued great work in these areas of the Julia ecosystem, Jacob!]

---

<div class="post-metadata">

### Author: ![quinnj](https://sea2.discourse-cdn.com/julialang/user_avatar/discourse.julialang.org/quinnj/32/11_2.png) [@quinnj](https://discourse.julialang.org/u/quinnj)
#### Post date: [January 5, 2017, 4:12am UTC](https://discourse.julialang.org/t/recommendations-for-odbc/1279/7 "2017-01-05T04:12:34Z")

</div>

Correct, 0.4 is no longer supported. I’ll be aiming to support 0.6 fully in the next week or two (after a few more of the “biggie” PRs get merged), and then on to 1.0! But at this point, I don’t expect any major API churn from ODBC itself. The updates happening in 0.6 and even through 1.0 should mainly allow certain optimizations under the hood.
