ruby&sqlite的例子
来源:互联网 发布:去香港用什么网络 编辑:程序博客网 时间:2024/06/03 00:37
例子1
require 'sqlite'db = SQLite::Database.new( "test.db" )sql = <<SQL drop table the_table; create table the_table ( a varchar2(30), b varchar2(30) ); insert into the_table values ( 'one', 'two' ); insert into the_table values ( 'three', 'four' ); insert into the_table values ( 'five', 'six' );SQLdb.execute_batch( sql )db.results_as_hash = truedb.execute( "select * from the_table" ) do |row| print row['a'], ', ', row['b'] putsend
例子2
require 'sqlite'require 'net/http'def accessNet(stat, url) res = Net::HTTP.get(URI.parse(URI.escape(url))) res.gsub(/<[^>]*>/m, ' ').gsub(/[\r\n]/m, ' ').gsub(/'/m, '"').scan(/([a-zA-Z-]+)\s/).each do |v| v = v.to_s.downcase stat[v] = (stat[v]==nil) ? 1 : stat[v]+1 endenddef saveData(db, stat) sql, i = '', 0 stat.each do |k, v| i = i+1 sql = "#{sql}insert into the_table values ('#{k}', #{v});" if(i%1000==0) db.transaction do |db| db.execute_batch( sql ) end sql='' end end db.transaction do |db| db.execute_batch( sql ) if(sql!='') endenddef doinit(db) sql = <<SQL drop table the_table; create table the_table ( key varchar(300), val int );SQL db.execute_batch( sql )enddef printInfo(db) # do the select db.results_as_hash = true db.execute( "select * from the_table t order by t.val desc" ) do |row| puts "#{row[0]}, #{row[1]}" end rows = db.execute( "select count(*) from the_table" ) p rowsenddb = SQLite::Database.new( "test.db" )doinit dbstat = {}accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/12/content_13102444.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/12/content_13099183.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/13/content_13106532.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/14/content_13107273.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/12/content_13099653.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/14/content_13107262.htm')accessNet(stat, 'http://www.chinadaily.com.cn/world/2011-08/15/content_13110160.htm')saveData db, statprintInfo db
相关的软件下载:
sqlite : http://www.sqlite.org/sqlitedll-2_8_17.zip
ruby gem : http://rubyforge.org/frs/?group_id=254&release_id=1522
- ruby&sqlite的例子
- ruby学习的例子
- SQlite優化查詢的例子
- Sqlite 的小例子
- Ruby 使用 OpenGL 的例子
- C使用SQLite的例子
- ruby下cassandra的简单例子
- 基本的Ruby类和函数例子
- Ruby正则表达式的一个例子
- ruby開發的互動式程序例子
- sqlite 例子
- sqlite 例子
- SQLite例子
- SQLite例子
- sqlite 例子
- sqlite 例子
- SQLite的一个触发器的例子
- SQLite的触发器的例子2
- 手机蓝牙各类服务对应的UUID
- asp.net(c#)中使用反射动态加载dll简单示例
- 程序有点难懂,请帮忙解释一下
- Hibernate 之增、删、改、查
- 【转】大牛很通俗地介绍《信号与系统》
- ruby&sqlite的例子
- Android 接口定义语言(AIDL)
- .NET 中动态加载DLL ,调用完之后及时释放。
- Sweep and Prune - new BroadPhase
- java虚拟机学习笔记——java虚拟机内部体系概述(第五章)
- 碰撞检测 - Broad-phase
- platform driver 学习笔记
- FlashBuilder4去水印
- POJ 1027 The Same Game