2ちゃんねる スマホ用 ■掲示板に戻る■ 全部 1- 最新50    

■ このスレッドは過去ログ倉庫に格納されています

SQLite Part.10

1 :NAME IS NULL:2012/08/16(木) 21:54:16.20 ID:???.net
組み込み型データベース SQLite について語るスレッドです。

SQLite
http://www.sqlite.org/

・C/C++ API
 http://www.sqlite.org/c3ref/intro.html

・Syntax
 http://www.sqlite.org/lang.html

・Limits
 http://www.sqlite.org/limits.html

・Support
 http://www.sqlite.org/support.html

961 :NAME IS NULL:2023/01/26(木) 03:02:27.75 ID:0ZdAuIEw.net
マシンパワーが上がっているから、処理性能も連動して上がる。

962 :NAME IS NULL:2023/01/26(木) 21:16:21.56 ID:???.net
https://www.sqlite.org/np1queryprob.html
> The SQLite database runs in the same process address space as the application.
> Queries do not involve message round-trips, only a function call.

HDD→SSDでクッソ恩恵受けてそう。

963 :NAME IS NULL:2023/02/03(金) 13:26:52.89 ID:???.net
デスクトップに a.db て適当な名前のdb作って書き込んでたら
書き込み中に a.nal ってファイルが現れてフイタ

964 :NAME IS NULL:2023/02/14(火) 07:54:16.00 ID:???.net
ちんちん!シュッ!シュッ!シュッ!

965 :NAME IS NULL:2023/03/14(火) 20:16:24.68 ID:9pflDpUJ.net
インサートだけの簡単なプログラムで使ってるけどdbファイルが2GB近くになった
dbファイルを消して新たに同じデータを流し込んだら3MB程度なのに
何でだろう

966 :NAME IS NULL:2023/03/14(火) 23:27:22.57 ID:???.net
sqlite3_analyzerで分析してくださいな
https://www.sqlite.org/sqlanalyze.html

967 :NAME IS NULL:2023/03/15(水) 06:44:08.28 ID:q1tU6ADy.net
そのツールは知りませんでした
分析してみます
ありがとうございます

968 :NAME IS NULL:2023/03/15(水) 18:08:02.02 ID:???.net
その2GBをvacuumしたら3MBになるみたいな簡単なオチではないよね・・・?

969 :NAME IS NULL:2023/03/15(水) 19:12:45.18 ID:???.net
>>968
そりゃ当然なるやろ
VACUUM相当のことをやったら3MBになったと書いてるじゃん

INSERTだけで3MBが2GBになる理由がわからなければ
アプリで定期的にVACUUMしなければいけないかわからないから
質問者的には意味が無いと思うよ

970 :NAME IS NULL:2023/03/15(水) 21:50:42.97 ID:???.net
「インサートだけの簡単なプログラム」←これが一番怪しい気がする。
実はインサートだけじゃなかった、に一票。

971 :NAME IS NULL:2023/04/11(火) 07:27:01.54 ID:9Zr80laE.net
SQLiteってトランザクションログとかあるでしょうか
実際の入力値に比べてdbファイルが随分デカくなってる気がするので

972 :NAME IS NULL:2023/04/11(火) 16:57:58.97 ID:2cL7SnhE.net
dbファイルが大きくなる問題に悩んでいる者ですがTextに長い文字が入ってくると項目の長さも拡張されるでしょうか
SQLServerでのMAXの精度指定のようなイメージです

ちなみにバキュームをしてもdbファイルのサイズは変わらないので知らない処理がこっそりデリートしてる事は無いと思います

973 :NAME IS NULL:2023/04/11(火) 20:01:26.80 ID:+S9P9M6L.net
隙間にデータを埋めたり、小さい隙間をなくす処理をしていたりと、初心者しか思いつかないようなネタを考えてられるのがすごいな。

あちこちで同じネタを製品別に書くのも飽きないか?

974 :NAME IS NULL:2023/04/11(火) 20:02:59.91 ID:+S9P9M6L.net
ファイル内の物理的なデータ位置が頻繁に変わる実装じゃ、使い物にならねえよw

975 :NAME IS NULL:2023/04/11(火) 20:44:25.60 ID:+S9P9M6L.net
ストレージの断片化を進める仕組みにメリットがあるかと考えればわかると思う

狭いところを使おうとして、他のデータを移動させるのもメリットがあるのか

976 :NAME IS NULL:2023/04/11(火) 20:56:22.64 ID:+S9P9M6L.net
>>972
SQLiteのtext型は、高度なRDBMSのLOB型と同じで、サイズが巨大だから安易に使うとどんどんデータファイルが大きくなる。

text型は巨大な文字データ型。

自分が格納している文字列に対して、使わない長さの領域を確保するので、INSERTでレコードが増えれば、ものすごい勢いでデータファイルが大きくなる。

SQLiteは大量のレコードを扱う用途には向いていない。

977 :NAME IS NULL:2023/04/11(火) 21:04:44.42 ID:???.net
一個のファイルですもんねぇ。

978 :NAME IS NULL:2023/04/11(火) 21:18:51.61 ID:???.net
>>975
mallocのアルゴリズムみたいなやつでしょ
細かいやつ用とでかいやつ用にわけておくやつ
データの移動はさすがにバキューン以外でやらんよ

979 :NAME IS NULL:2023/04/11(火) 23:28:05.04 ID:???.net
まーたいい加減な嘘連投するやつ来てるね
質問者が騙されないことを祈る

980 :NAME IS NULL:2023/04/12(水) 08:36:27.57 ID:+esFaGz3.net
SQLite公式マニュアル
https://www.sqlite.org/index.html

text型は文字列型というより、文章・文書の内容を格納する大きな文字データ型

text型を使うとレコードサイズが大きくなるため、レコードが増えるとdbファイル(データファイル)がすぐに大きくなる。

バキュームしてもtext型のカラムが確保している部分が大きいので、さほどdbファイル(データファイル)は小さくならない。

981 :NAME IS NULL:2023/04/12(水) 09:45:02.89 ID:???.net
>>980
どこにそんなこと書いてあるのか・・・

982 :NAME IS NULL:2023/04/12(水) 17:29:05.92 ID:???.net
いつもの法螺吹き君はカラムがすべて固定長だとでも思ってるみたいだねww

983 :NAME IS NULL:2023/04/12(水) 17:30:19.05 ID:???.net
保存してる文字列のサイズが大きければ保存先のファイルが大きくなるのは当然だよね
圧縮すれば小さくなるけどそれはデータ型とは関係のない話

984 :NAME IS NULL:2023/04/12(水) 20:20:43.81 ID:+esFaGz3.net
>>983
そういうのは素人考えだよ?

985 :NAME IS NULL:2023/04/12(水) 20:28:28.28 ID:+esFaGz3.net
>>982
固定長じゃなくて、ブロックのような単位で領域を確保する。

あなたのような素人にはファイルのどこにデータがあるのか考えたこともないんだろうね。

バキュームは位置が変わるんだよ。

意味がある文字列が長い文字列に更新されたときに離れたところに続きのデータを配置すると思っているかのような言い草だけど、それこそ古い考え方だよ。

VSAMファイルみたいな階層型データベースの改良版ではないぞ。

986 :NAME IS NULL:2023/04/12(水) 20:29:09.31 ID:+esFaGz3.net
>>983
それはまったく違う。dbファイルの中身を比較すればわかるだろ

987 :NAME IS NULL:2023/04/12(水) 22:20:48.62 ID:???.net
また関係ない話を持ち出して法螺吹くボラクルww

>固定長じゃなくて、ブロックのような単位で領域を確保する。
固定長の意味すら知らないんだなww

>バキュームしてもtext型のカラムが確保している部分が大きいので、さほどdbファイル(データファイル)は小さくならない。
知りもしないことで↑こんな嘘ついてる暇があったら基礎を勉強してねw

988 :NAME IS NULL:2023/04/12(水) 22:22:44.06 ID:+esFaGz3.net
>>987
https://www.sqlite.org/fileformat2.html

989 :NAME IS NULL:2023/04/16(日) 15:33:14.96 ID:???.net
エンジン

990 :NAME IS NULL:2023/04/27(木) 19:57:15.11 ID:WFjDl1XV.net
竹田

991 :NAME IS NULL:2023/04/27(木) 19:57:39.34 ID:???.net
私の名前はマイクです

992 :NAME IS NULL:2023/04/27(木) 19:57:52.73 ID:???.net
ダジャレかよ、

993 :NAME IS NULL:2023/04/27(木) 19:59:23.05 ID:???.net
こゆた

994 :NAME IS NULL:2023/04/27(木) 20:00:11.16 ID:???.net
看板は

995 :NAME IS NULL:2023/04/27(木) 20:00:28.67 ID:???.net
燻し銀

996 :NAME IS NULL:2023/04/27(木) 20:00:42.45 ID:???.net
ガラパゴス諸島

997 :NAME IS NULL:2023/04/27(木) 20:01:21.74 ID:???.net


998 :NAME IS NULL:2023/04/27(木) 20:03:19.72 ID:???.net
!?

999 :NAME IS NULL:2023/04/27(木) 20:03:32.84 ID:???.net
もゆる

1000 :NAME IS NULL:2023/04/27(木) 20:06:04.15 ID:???.net
おんか

1001 :NAME IS NULL:2023/04/27(木) 20:06:08.86 ID:???.net
ヒート

1002 :NAME IS NULL:2023/04/27(木) 20:06:50.81 ID:???.net
しはた

1003 :NAME IS NULL:2023/04/27(木) 20:06:56.04 ID:???.net
方法

1004 :NAME IS NULL:2023/04/27(木) 21:06:14.13 ID:???.net
てす

1005 :NAME IS NULL:2023/04/27(木) 21:06:25.58 ID:???.net
テスト

1006 :NAME IS NULL:2023/04/27(木) 21:06:47.71 ID:???.net


1007 :NAME IS NULL:2023/04/27(木) 21:07:21.19 ID:???.net
テスト!

1008 :NAME IS NULL:2023/04/27(木) 21:07:36.83 ID:???.net


1009 :NAME IS NULL:2023/04/27(木) 21:07:49.27 ID:???.net
テスト

1010 :2ch.net投稿限界:Over 1000 Thread
2ch.netからのレス数が1000に到達しました。

総レス数 1010
255 KB
掲示板に戻る 全部 前100 次100 最新50
read.cgi ver 2014.07.20.01.SC 2014/07/20 D ★