タグ

Programmingとdatabaseに関するpipeheadのブックマーク (15)

  • Python 軽量ドキュメントデータベース TinyDB

    私が選ぶ2015年の”新しい”Pythonモジュール トップ5 こちらで紹介されている「TinyDB」 http://tinydb.readthedocs.org/en/latest/index.html Pure Pythonなドキュメントデータベースなようです。 インストールして使ってみます。 インストール インストールはeasy_installで行いました。 バージョン3.1.2がインストール出来ました。 データの登録と検索 こちらを参考に、使い方を調べてみます。 http://tinydb.readthedocs.org/en/latest/getting-started.html まず、データベースの作成とデータ登録を行ってみます。 from tinydb import TinyDB, Query# データベースオープン 引数はファイル名db = TinyDB('db.json'

    Python 軽量ドキュメントデータベース TinyDB
  • Alasql.js - オンメモリで動作するJavaScriptデータベース MOONGIFT

    JavaScriptを活用したWebアプリケーションを開発している際に、一時的に保存したいデータをどのように扱うかは大きな問題です。何となく変数や配列、ハッシュに保存してしまいがちですが、そのデータの取り出しや更新が面倒だったりします。 そこで使ってみたいのがAlasql.jsです。JavaScriptだけで作られたクライアントサイド向けのSQLデータベースになります。 Alasql.jsの使い方 使い方の例。データを配列で放り込んで、SQLで取り出せます。 デーブルの作成を含めてSQLが書けます。 データはlocalStrageに保存することもできるので、再読込時に復元も可能です。 Alasql.jsはHTML5仕様の中で検討されていたWeb SQLとは異なる実装で、オンメモリで動きます。高速で動作し、かつデータはlocalStrageに保存しておくこともできるので容量は小さいながらも永

    Alasql.js - オンメモリで動作するJavaScriptデータベース MOONGIFT
  • SQLite3を使用する - Python Tips

    軽量・高速なデータベースSQLitePythonから扱うためのライブラリ。 インストール Python2.5から標準ライブラリに入りました。 インストール作業は不要です。 使用方法 sqlite3をインポートする #!python2.6 # -*- coding: utf-8 -*- import sqlite3 データベースを作成する con = sqlite3.connect("data.db") ファイルがすでに存在するときはファイルを開く。 ファイルがないときは新しいデータベースを作成する。 isolation_levelにNoneを指定すると、自動コミットモードになります。 con = sqlite3.connect('temp.db', isolation_level=None) 特別な名前である ":memory:" を使うとRAM上にデータベースを作ることもできます。 c

  • はてなブログ | 無料ブログを作成しよう

    あの犬は友ですか敵なんですか おばさん何も知らんのですか 飼い犬タロになっているつもりで詠む「犬短歌」、2025年上半期の歌です。暑くなるとタロの歌心は減退するようです。気に入ってる歌の最後には*マークをつけてます(/サキコとあるのは私名義の歌)。俳句も少し混じってます。 ◆ 一月 あの犬は友ですか敵なんですか お…

    はてなブログ | 無料ブログを作成しよう
  • はてなブログ | 無料ブログを作成しよう

    あの犬は友ですか敵なんですか おばさん何も知らんのですか 飼い犬タロになっているつもりで詠む「犬短歌」、2025年上半期の歌です。暑くなるとタロの歌心は減退するようです。気に入ってる歌の最後には*マークをつけてます(/サキコとあるのは私名義の歌)。俳句も少し混じってます。 ◆ 一月 あの犬は友ですか敵なんですか お…

    はてなブログ | 無料ブログを作成しよう
  • Python: SQLiteにデータを格納、検索、出力 – pysqlite

    レコードの検索や格納処理性能がオープンソースのDBで間に合う程度の問題であれば、積極的に使っていきたいです。それによって、他のロジックのコーディングに傾注できます。また、DBという共通のプラットフォームは複数言語から扱えますので、データの再利用がしやすいです。 さて、今回はPythonからSQLiteを扱うサンプル(pysqliteの使い方)を書いてみます。 ソースコード # coding: UTF-8 from pysqlite2 import dbapi2 as sqlite # データベースに接続(作成) con = sqlite.connect('test1.db') # テーブルの列要素: 名前、性別(male or female)、年齢 con.execute('CREATE TABLE people (name TEXT, sex TEXT, age INTEGER)') #

    Python: SQLiteにデータを格納、検索、出力 – pysqlite
  • SQLite - Python

  • O/Rマッピングとは - IT用語辞典

    概要 O/Rマッピング(Object/RDB mapping)とは、オブジェクト指向プログラミング言語におけるオブジェクトとリレーショナルデータベース(RDB)の間でデータ形式の相互変換を行うこと。そのための機能やソフトウェアを「O/Rマッパー」(O/R mapper)という。 オブジェクト指向言語では互いに関連するデータ項目を一つのオブジェクトにまとめ、データを操作する手続き(メソッド)と一体的に管理する。一方、リレーショナルデータベース(relational database)では一件のデータを複数の属性の値の組として表現し、組を連ねた表の形でデータを永続的に保存する。 プログラムからRDBへデータを保存するには、オブジェクトを実体化したインスタンスの持つ値をデータベースの表中の項目に当てはめて書き込む操作(読み込みの場合はこれとは逆の操作)を行なうが、通常はデータベース管理システム(

    O/Rマッピングとは - IT用語辞典
  • PerlでSQLiteとCSVのどちらを使ったほうが検索が速いかを検証 - Pumpkin Moonshine

    目的 PerlSQLiteCSVのどちらを使ったほうが検索が速いかを検証する 検証方法 データの最後尾にあるレコードを検索する際の速度を比べる。 DBの検索項目にはIndexを追加した。 結果 1秒間に実行できる回数(回数が多いほど高速) CSVSQLite 100件3333回714回 1,000件333回666回 10,000件33回714回 100,000件3回714回 SQLiteはIndexで検索を行っているので、検索速度がデータ件数に依存しなかった。 CSVの読み込みはデータの件数分順次リードを行っている為、検索速度がデータ件数に依存した。 データが100件の場合は、CSVのほうが速かった。 データが1,000件以上の場合は、SQLiteのほうが速かった。 結論 扱うデータが1,000件以上になってきた場合はSQLite等のDBを使うことを考えたほうが良いかもしれない。 デー

  • 2007-07-24

    TurboGearsを使うに当たってO/Rマッパーをつかうから、 SQLのドライバレベルのローレベルなことは知る必要性は全くないのですが、 当に全く知らないとデバッグで苦労する(はず??)ので、 DBAPIを使ったPythonプログラミングを軽く練習しておきます。 あと、意外にpysqlite に関する記述が少なかったのでまとめてみた。 以下環境 Gentoo Linux 2006.1 ←(ちょっと古い(^^;) Python2.4.3 SQLite 3.3.5 (Python2.5では標準モジュールとしてsqlite3という名前である) pysqlite 2.3.1 以下のテーブルを作って操作してみる。 商品番号 商品 値段 産地 0001 リンゴ 200 青森 0002 みかん 300 愛媛 0003 バナナ 150 フィリピン 0004 メロン 700 北海道 0005 ブドウ 5

    2007-07-24
  • オブジェクト関係マッピング - Wikipedia

    オブジェクト関係マッピング(英: Object-relational mapping, O/RM, ORM)とは、データベースとオブジェクト指向プログラミング言語の間の非互換なデータを変換するプログラミング技法である。オブジェクト関連マッピングとも呼ぶ。実際には、オブジェクト指向言語から使える「仮想」オブジェクトデータベースを構築する手法である。オブジェクト関係マッピングを行うソフトウェアパッケージは商用のものもフリーなものもあるが、場合によっては独自に開発することもある。 オブジェクト指向プログラミングでは、データ管理タスクは一般に単純なスカラーではない値を持つオブジェクトを操作するよう実装される。例として、1人の人物に0個以上の電話番号と0個以上の住所が対応している住所録での住所検索を考えてみよう。オブジェクト指向的な実装では、「人物オブジェクト」に住所録の内容を格納する「スロット」が

    pipehead
    pipehead 2007/04/19
    Object-relational mapping, O/RM, ORM, オブジェクト関連マッピング
  • C++からSQLite3を使ってみる。 - seraphyの日記

    Python2.5でSQLite3を使って以来、C++でも試したいと思っていた。 Windows用のSQLite3のDLLは、msvcrt.dllのみに依存する、という手軽なものであり、DLL自体のサイズも400KB足らずと軽量である。 これを実際にプログラムに組み込んで使ってみた。 必要なもの SQLiteのページから、以下の2つをダウンロードする。 sqlitedll-3_3_8.zip sqlite-source-3_3_8.zip (sqlite3.h が必要なため) DLLは当然として、この中にはsqlite3.dllと、そのDEFファイルのみが置かれている。 ヘッダファイル等がないので、ソースを取得する必要がある。 実際に使うヘッダは、sqlite3.hだけである。 準備 DLLはあるがlibファイルがないので、 lib /def:sqlite3.def /machine:x8

    C++からSQLite3を使ってみる。 - seraphyの日記
  • Python2.5でSQLite3を使ってみる。 - seraphyの日記

    SQLiteとは Python2.5には、標準でSQLiteという軽量データベースが含まれている。 SQLiteは、JAVAでいうところのHSQLDBやApache Derbyのような感じのようである。 SQLLiteはデーモンやサービスではなく、スタンドアロンでのみ動作する。(DerbyやHSQLDBは組み込みモードとサーバーモードの両方をもつが。) また、データベースのストアもディスク上の単一ファイルになる。 Windowsでいうところの、ACCESS95〜2000で使われていた、JETデータベースエンジンのMDBファイルのような感じであろうか。 要するに単なるライブラリである。 ライセンスは、なんとパブリックドメイン(著作権放棄)である。 そのため、Pythonに限らず、C/C++PerlPHPなどに広く組み込まれている。 Python2.4まではアドオンとして別途インストールす

    Python2.5でSQLite3を使ってみる。 - seraphyの日記
  • Using SQLite3.DLL in Visual C++ 6.0

    SQLite Vesion 3 DLL版 を呼び出すC/C++アプリケーションの構築 SQLite Version 3 の DLL の導入と、C/C++アプリケーションからそれを使う方法を解説します。 使用する開発ツールは Visual C++ 6.0 です。 開発ターゲットは簡単なコンソールアプリケーションとします。 ビルドはコマンドライン環境で行います。統合環境上のプロジェクトで行う場合にはビルド手順を適当に読み替えてください。 Back to index Download sample-codes-using-sqliet3-dll.zip Step1. 必要なファイルをダウンロードする SQLite家サイトのダウンロードページから、次の2つのzipファイルを入手します。 ファイル名末尾の数字はリリースバージョンであり、その数字は頻繁に変わります。 3_3 以降の適切なものを選んで

  • SQLite3's C++ API 日本語

    C/C++ Interface For SQLite Version 3 [日語超訳版] 最終改訂: 2006年02月16日 10時59分54秒 原文: http://www.sqlite.org/capi3.html -- last modified on 2005/03/11 04:39:58 Back to index 1.0 Overview SQLiteバージョン3.0は、SQLiteの新バージョンであり、派生元のSQLite 2.8.13コード・ベースとは、非互換性のファイル・フォーマットおよびAPIを備えています。SQLiteバージョン3.0は次の機能要求に答えるために作成されました: UTF-16の対応 照合順序をユーザ定義可能なテキスト インデックス付カラムにBLOBを格納する能力 これらの機能を実装するためには、データベース・ファイル・フォーマットに非互換な変更が必要

  • 1