なんじゃくにっき

プログラミングの話題中心。

データベース / 論理学

無料でDB(データベース)使えるサービスあるの? 2024年春

注意 各サービス RDBMS Neon Vercel Postgres Cloudflare D1 Supabase NoSQL Firestore(Firebase) / Cloud Datastore MongoDB Atlas DWH(Data ware house) BigQuery 比較的安価なサービス さくらのレンタルサーバー Heroku PlanetScale Render 期間限定無料…

Cloudflare D1が正式サービスイン

Cloudflare上で動くSQLiteのCloudflare D1がベータ版を抜けてGenerally Availableに(正式サービスイン)。 blog.cloudflare.com 私事ではありますが、アルファ版の頃にちょっと触って、また最近ちょくちょくベータ版を触っていたのでとてもタイムリー。 料…

Cloudflare D1の使い途を考える

※この記事はD1がベータ版のときに書かれました Cloudflare 上で動くSQLiteであるCloudflare D1の使い途を考えるコーナー。 制約 そもそもD1ではないSQLiteではローカルのDBに実行するように作られています。 D1では Cloudflare Workers / Cloudflare Pagesか…

Cloudflare D1 大量データ作成/更新はどうすれば良いか?

Cloudflare D1で大量データ作成/更新系を行う方法をいくつか考えてみました。 CLIから実行 1つ目はSQLを生成してCLIから実行する方法。 (結局CLIの実装はAPIを叩いていますが) npx wrangler d1 execute hogehoge_database --file=./bulk_insert.sql みたいに…

Cloudflare D1 使い方

概要 CloudFlareで動くSQLiteであるCloudFlare D1を動かしていきます。 https://developers.cloudflare.com/d1/ 注意点 現時点(2024年3月)でD1はベータバージョンです。 今後仕様が変わることもあります。手順もたまに少し変わっていたりします。 公式ドキュ…

マルチプラットフォームな汎用GUI_DBクライアントのDBeaver

※間違って消してしまったので復旧しました 概要 DBeaver MySQLのクライアントとしてMacではSequel Pro -> Sequel Aceを使っていたんですが、 LinuxやWindowsでは永らくCUIからmysqlコマンドで操作するという原始的な方法を取っていました。 流石にGUIクライ…

SATソルバとは

SATソルバとは・・CNF(乗法標準系)で表された論理式が充足可能(SAT)か充足不能(UNSAT)か調べるプログラムのこと。 CNFとは・・変数もしくは変数の否定(NOT)の和(OR)の積(AND)で表される論理式のこと例1) (P1∨P2)∧(¬P1∨P4) 充足可能(SAT)とは・・論理…

Prolog 規則(rule)と事実(fact)

Prologの節(clause)の一つ、規則(rule)と事実(fact)について解説します。 ■規則(rule)前々回くらいに取り上げた、 animal(X) :- mammal(X). という規則を例に取ります。 このうち前半部 animal(X) を頭部(head)もしくは条件部、後半部 mammal(X) を本体(head…

Prolog 質問(query)

Prologで質問(fact)は『?-』から始めて記述します。 SWI-Prologを起動したときに 1 ?- と表示されるのも、『今から質問を受け付けますよ』という意味です(1は行番号)。 ここで true. と入力すると true. と返ってきます。 false. と入力すると false. と返っ…

Prolog 節(clause)

Prologでは論理を構成する単位を節(clause)と呼びます。文と呼ばれることもありますが節と呼ぶほうが多いみたいなので、長いものに巻かれてここでは節と呼びます。 Prologの節は3つに大分されます。その3つとは (1) 事実(fact)(2) 規則(rule)(3) 質問(query)…

Prolog 開発環境のインストールからHello, Worldまで

Prologの処理系は沢山、沢山あります。ですので、Prologの学習を始める際にどれを使っていいのか迷うことになりますが、ここではSWI-Prologを使うことにします。SWI-PrologはLinux版、Windows版、Mac版とあります。ライセンスはLGPL。 トップページからDownl…

Prolog入門

Prolog入門 目次 1 序 Prologue of Prolog 1-1 ? 2 さあ始めよう Hello & Goodby 2-1 Prolog 開発環境のインストールと起動 3 節 3-1 節(clause) 3-2 質問(query) 3-3 規則(rule)と事実(fact) 参考文献 Prologを学ぶ-文化とその実践-(海文堂 刊、杉崎昭生 著…

【受験記】データベーススペシャリスト

試験科目:データベーススペシャリスト【実施日】 2011年6月26日 【結果】 ◎合格 午前I :免除(2010年度春季 応用情報処理試験 合格のため) 午前II:76点 午後I :89点(選択:問1、問2) 午後II:84点(選択:問2) 全てにおいて60点以上なら合格。 【勉強…

Oracle = 甲骨文字

楽天が中国では楽酷天ってのも酷くね?ってニュース見て思ったけども、 Oracleは甲骨文字ですよ、皆さん。 Oracle→神託→甲骨文字ということらしい http://www.oracle.co.jp/2shin/ora66/19.html 甲骨文字で思い出したけど、 『甲骨文字の再現のために亀の甲…

Oracle SQL 結構どうでもいい話

SQL(Oracle 10g)のOrder by句で遊んでみた。ex.1 SELECT EMPNO, ENAME FROM EMP ORDER BY 1 SQLでOrder By句に数値を指定すると列番号でソートできるが(列名で指定したほうがパッと分かるしリファクタリングにも強いけど)、ex.2 SELECT EMPNO, ENAME FROM EM…

C# + SQLite 初体験 続き

一昨日書いたものの続き。 らんだむダンジョン 装備シミュレータ を作ったときのソースで 再利用できそうな部分だけメモ。 ●ADO.NET provider for the SQLiteの使い方:準備 1.公式サイトのDownLoadsからSQlite.1.x.x.x.binaries.zipをダウンロード、解凍。 …

C# + SQLite 初体験

お題の通り、C#とSQLiteをそれぞれ初めて使ってみた。率直な感想はと言うと・・・ どちらも結構使いやすい。Visual C++ を使ったことがあれば割とすんなりとC#は組めるし、 何か他のDB経験済みならSQLiteの文法でも然程悩まない (これはSQLが標準化されてる…

SQLで乱数表

Oracle10g以降限定だけど 16*16の乱数表を吐くSQLを書いてみた。 SELECT TO_CHAR(MAX(X) KEEP (DENSE_RANK FIRST ORDER BY Y), 'FM0X') "0", TO_CHAR(MAX(X) KEEP (DENSE_RANK FIRST ORDER BY MOD(Y+1,16)), 'FM0X') "1", TO_CHAR(MAX(X) KEEP (DENSE_RANK F…