SlideShare a Scribd company logo
1 of 24
Download to read offline
Base をSQLite の
フロントエンドにしてみよう
発表者 那谷 進(@78tch)
今日のお題
Base って、MySQLとかPostgreSQLとか、ほかのRDBMSにも接
続できるらしいけど・・・
いまひとつやり方がよくわからない。
試行錯誤して、なんとなくやり方がわかったので、発表します。
今回はSQLiteを取り上げますが、他のRDBMSでも応用がきくと思
われます。
BaseでSQLiteってなにがうれしいの?
GUIでSQLiteのデータが操作できる。
えーっと・・・。
全体像
Windows
「Base」=「ODBC(ドライバマネージャ)」=「SQLite の ODBC
ドライバ」=「SQLite のデータソース」
UNIX系
「Base」=「unixODBC(ドライバマネージャ)」=「SQLite の
ODBC ドライバ」=「SQLite のデータソース」
   「アプリ」 「ODBC」  「ODBCドライバ」 「データソース」
ODBCって何?
Open DataBase Connectivity
Windowsで、Access や Visual Basic などのアプリケーションか
ら、SQL Server やOracle などの RDBMS に接続するときの、抽
象化中間層。
ODBC アーキテクチャでは、 Access などのアプリケーションは、
ODBC(ドライバマネージャ)に接続します。そして、 ODBC は、
「SQLite ODBC ドライバ」など各RDBMSごとに特有の ODBC ド
ライバを使用して、データソースに接続します。
同様のものに、「JDBC」があります。
unixODBC って何?
UNIXなどで、「Windows における ODBC」と同じ役割をするもの。
ODBC ドライバって何?
各RDBMSごとに提供される、ODBCに対応するための機能拡張
です。
次のようなものがあります。
libmyodbc (MySQL
odbc-postgresql (PostgreSQL
libsqliteodbc (SQLite
tdsodbc (MS SQL / Sybase SQL
mdbtools (*.mdb (JET / MS Access)
ODBC接続の設定
いわゆる「接続文字列」のはたらき
ODBCドライバやデータファイルの場所やオプションなどを指定し
て、これに名前をつける。(DSN:Data Source Name)
ユーザー DSN: 現在ログオンしているユーザーだけに定義され
る DSN。レジストリ サブキーとして保存される。
システム DSN: すべてのユーザーおよびサービスで共有される
DSN 。レジストリ サブキーとして保存される。
ファイル DSN: ファイルに保存される DSN。ネットワークで共有し
たり、配布したりするためのもの。
実際にやってみましょう!
でもその前に...
OSは何?
32bit版? 64bit版?
SQLiteは Ver.2 ? Ver.3 ?
それぞれで、ODBCも、ODBCドライバも違うので、要注意!!
Windows7(32bit) & SQLite Ver.3 編
公式サイトから「sqliteodbc.exe 」をDLしてインストール。
http://www.ch-werner.de/sqliteodbc/
「コントロールパネル」→「システムとセキュリティ」→「管理ツー
ル」→「データソース(ODBC)」→「ODBCデータソースアドミニス
トレーター」の「ドライバ」タブで、「SQLite3 ODBC Driver」が追加
されていることを確認。
Windows 設定ファイル
DSN
ユーザー DSN:
HKEY_CURRENT_USERSoftwareODBCODBC.INI
システム DSN:
HKEY_LOCAL_MACHINESoftwareODBCODBC.INI
ファイル
DSN:/etc/ODBCDataSources/FileDSNhogehoge.dsn
いよいよBaseから接続1of4
Base でデータベースを新規作成し、「既存のデータベースに接
続」で「ODBC」を選択します。
いよいよBaseから接続2of4
ユーザーDSNで名づけたデータソース名が選択できます。
いよいよBaseから接続3of4
SQLite にはユーザーがないので、空白のままテスト接続します。
いよいよBaseから接続4of4
「sample.db」の内容をBase で見ることができています。
情報源
「view README」に説明あり
各設定項目の詳細は、今回は
調べきれませんでしたorz...
Ubuntu(64bit) & SQLite Ver.3 編
Ubuntu ソフトウェアセンターで「unixodbc」(すべて小文字)を検
索し、「詳細」の「追加のアドオン」のなかから「ODBC Driver for
SQLite」もインストール。
ODBCManageDataSourcesQ4で設定1of3
端末からODBCManageDataSourcesQ4を起動
ユーザーDSNの場合はそのまま、システムDSNの場合はsudo
で起動します。
ODBCManageDataSourcesQ4で設定2of3
まず「Advanced」で「ODBC Driver for SQLite」を設定します。
「Driver」と
「Setup」が
libsqlite3odbc.so
になっていること
を確認します。
設定変更する場合、
sudo で起動する
必要があります。
ODBCManageDataSourcesQ4で設定3of3
Data Source Name の「User」に設定をAdd します。
「Database」に、
SQLite3 データ
ファイルの場所を
指定します。
保存できているか
確認します。
他の指定項目の
詳細は今回調b(ry
Ubuntu 設定ファイル
ドライバ設定ファイル
/etc/odbcinst.ini
DSN
ユーザー DSN:~/.odbc.ini
システム DSN:/root/.odbc.ini
ファイル
DSN:/etc/ODBCDataSources/FileDSNhogehoge.dsn
いよいよBaseから接続
Windows の場合とまったく同じ手順です。
その他のGUI ツール
SQLite Manager
SQLite Database Browser
SQLiteman
PupSQLite
TkSQLite
参考文献など
書籍
「SQLite入門第2版」西沢直木[著]
「SQLiteポケットリファレンス」五十嵐貴之[著」
SQLite 公式 https://sqlite.org/
unixODBC 公式 ※特に、「Manuals」⇒「User Manual」
http://www.unixodbc.org/
SQLite ODBC Driver 公式
http://www.ch-werner.de/sqliteodbc/
ブログ
http://aastate.web.fc2.com/other-software/libreoffice-tips/index.html
http://www.crystal-creation.com/software/tool/office/access/external
/sqlite.htm
OpenOffice.org のドキュメント
https://wiki.openoffice.org/wiki/Documentation/How_Tos/Using_SQ
Lite_With_OpenOffice.org

More Related Content

What's hot

文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)
Hiroshi Tokumaru
 

What's hot (20)

データモデリング・テクニック
データモデリング・テクニックデータモデリング・テクニック
データモデリング・テクニック
 
SQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するかSQL大量発行処理をいかにして高速化するか
SQL大量発行処理をいかにして高速化するか
 
RとSQLiteによるオミックス解析の促進
RとSQLiteによるオミックス解析の促進RとSQLiteによるオミックス解析の促進
RとSQLiteによるオミックス解析の促進
 
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
Snowflake Architecture and Performance(db tech showcase Tokyo 2018)
 
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
PostgreSQLアーキテクチャ入門(INSIGHT OUT 2011)
 
データ分析基盤運⽤チームの 運⽤業務を改善してみた話
データ分析基盤運⽤チームの 運⽤業務を改善してみた話データ分析基盤運⽤チームの 運⽤業務を改善してみた話
データ分析基盤運⽤チームの 運⽤業務を改善してみた話
 
ビッグデータ処理データベースの全体像と使い分け
ビッグデータ処理データベースの全体像と使い分けビッグデータ処理データベースの全体像と使い分け
ビッグデータ処理データベースの全体像と使い分け
 
PostgreSQL失敗談
PostgreSQL失敗談PostgreSQL失敗談
PostgreSQL失敗談
 
ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説ドメイン駆動設計サンプルコードの徹底解説
ドメイン駆動設計サンプルコードの徹底解説
 
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQLの統計情報について(第26回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j異次元のグラフデータベースNeo4j
異次元のグラフデータベースNeo4j
 
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話DDD x CQRS   更新系と参照系で異なるORMを併用して上手くいった話
DDD x CQRS 更新系と参照系で異なるORMを併用して上手くいった話
 
データ収集の基本と「JapanTaxi」アプリにおける実践例
データ収集の基本と「JapanTaxi」アプリにおける実践例データ収集の基本と「JapanTaxi」アプリにおける実践例
データ収集の基本と「JapanTaxi」アプリにおける実践例
 
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 TokyoPrestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
Prestoで実現するインタラクティブクエリ - dbtech showcase 2014 Tokyo
 
文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)文字コードに起因する脆弱性とその対策(増補版)
文字コードに起因する脆弱性とその対策(増補版)
 
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
今から始めようMicrosoft PowerApps! (2017年版) - 吉田の備忘録
 
まずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニングまずやっとくPostgreSQLチューニング
まずやっとくPostgreSQLチューニング
 
グラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみたグラフ構造のデータモデルをPower BIで可視化してみた
グラフ構造のデータモデルをPower BIで可視化してみた
 
ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開ヤフー社内でやってるMySQLチューニングセミナー大公開
ヤフー社内でやってるMySQLチューニングセミナー大公開
 
Vacuum徹底解説
Vacuum徹底解説Vacuum徹底解説
Vacuum徹底解説
 

Viewers also liked

"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic
78tch
 
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
弘毅 露崎
 

Viewers also liked (7)

初心者向け SQLite の始め方
初心者向け SQLite の始め方初心者向け SQLite の始め方
初心者向け SQLite の始め方
 
"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic"Hello World!" から始める Calc で LibreOffice Basic
"Hello World!" から始める Calc で LibreOffice Basic
 
「ワープロソフト」のセオリーを押さえよう! Writer 編
「ワープロソフト」のセオリーを押さえよう! Writer 編「ワープロソフト」のセオリーを押さえよう! Writer 編
「ワープロソフト」のセオリーを押さえよう! Writer 編
 
実務で使えたLibreOffice
実務で使えたLibreOffice実務で使えたLibreOffice
実務で使えたLibreOffice
 
RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成RとSQLiteで気軽にデータベース作成
RとSQLiteで気軽にデータベース作成
 
Libre office導入してわかったこと
Libre office導入してわかったことLibre office導入してわかったこと
Libre office導入してわかったこと
 
とある制作会社の目次索引作成技法
とある制作会社の目次索引作成技法とある制作会社の目次索引作成技法
とある制作会社の目次索引作成技法
 

Similar to LibreOffice Base をSQLite のフロントエンドにしてみよう

2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば
貴仁 大和屋
 
PhpでMySqlを使う
PhpでMySqlを使うPhpでMySqlを使う
PhpでMySqlを使う
pcod
 
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
Insight Technology, Inc.
 

Similar to LibreOffice Base をSQLite のフロントエンドにしてみよう (20)

Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4Microsoft Build 2021 前夜祭 LT#4
Microsoft Build 2021 前夜祭 LT#4
 
2012年1月技術ひろば
2012年1月技術ひろば2012年1月技術ひろば
2012年1月技術ひろば
 
ビッグデータやIoTシステムを支えるデータベース 『GridDB』
ビッグデータやIoTシステムを支えるデータベース 『GridDB』ビッグデータやIoTシステムを支えるデータベース 『GridDB』
ビッグデータやIoTシステムを支えるデータベース 『GridDB』
 
20180216 sapporo techbar_db_migration
20180216 sapporo techbar_db_migration20180216 sapporo techbar_db_migration
20180216 sapporo techbar_db_migration
 
PhpでMySqlを使う
PhpでMySqlを使うPhpでMySqlを使う
PhpでMySqlを使う
 
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
[D33] そのデータベース 5年後大丈夫ですか by Hiromu Goto
 
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
 
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version - ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
ビッグデータ処理データベースの全体像と使い分け - 2017年 Version -
 
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
[db tech showcase Tokyo 2017] A32: Attunity Replicate + Kafka + Hadoop マルチデータ...
 
Oracle Database Standard EditionでセミオンラインDDL
Oracle Database Standard EditionでセミオンラインDDLOracle Database Standard EditionでセミオンラインDDL
Oracle Database Standard EditionでセミオンラインDDL
 
Cassandra(no sql)によるシステム提案と開発
Cassandra(no sql)によるシステム提案と開発Cassandra(no sql)によるシステム提案と開発
Cassandra(no sql)によるシステム提案と開発
 
Google Big Query
Google Big QueryGoogle Big Query
Google Big Query
 
Hachioji.pm11
Hachioji.pm11Hachioji.pm11
Hachioji.pm11
 
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
20221117_クラウドネイティブ向けYugabyteDB活用シナリオ
 
Smart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless DesignSmart Tennis Lesson Serverless Design
Smart Tennis Lesson Serverless Design
 
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
SQL Beginners Day #1 - SQL Server および Azure SQL のインストールと管理
 
The seminar of asp.net at 201908 sakurug
The seminar of asp.net at 201908 sakurugThe seminar of asp.net at 201908 sakurug
The seminar of asp.net at 201908 sakurug
 
About NoSQL
About NoSQLAbout NoSQL
About NoSQL
 
(続) Effective SQLite for Android
(続) Effective SQLite for Android(続) Effective SQLite for Android
(続) Effective SQLite for Android
 
ASP.NET MVC Part 2
ASP.NET MVC Part 2ASP.NET MVC Part 2
ASP.NET MVC Part 2
 

LibreOffice Base をSQLite のフロントエンドにしてみよう