校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃

主頁 > 知識庫 > Ruby連接使用windows下sql server數據庫代碼實例

Ruby連接使用windows下sql server數據庫代碼實例

熱門標簽:高德地圖標注客服 湖州u友防封電銷卡 滴滴外呼系統 地圖標注賺錢項目注冊 電銷機器人廠商代理 百度地圖標注自定義圖片 徐州網絡外呼系統哪個好 白銀外呼paas系統 常德電銷平臺外呼系統軟件價格
require 'win32ole'

class SqlServer
  # This class manages database connection and queries
  attr_accessor :connection, :data, :fields

  def initialize
    @connection = nil
    @data = nil
  end

  def open
    # Open ADO connection to the SQL Server database
    connection_string = "Provider=SQLOLEDB.1;"
    connection_string  "Persist Security Info=False;"
    connection_string  "User ID=USER_ID;"
    connection_string  "password=PASSWORD;"
    connection_string  "Initial Catalog=DATABASE;"
    connection_string  "Data Source=IP_ADDRESS;"
    connection_string  "Network Library=dbmssocn"
    @connection = WIN32OLE.new('ADODB.Connection')
    @connection.Open(connection_string)
  end

  def query(sql)
    # Create an instance of an ADO Recordset
    recordset = WIN32OLE.new('ADODB.Recordset')
    # Open the recordset, using an SQL statement and the
    # existing ADO connection
    recordset.Open(sql, @connection)
    # Create and populate an array of field names
    @fields = []
    recordset.Fields.each do |field|
      @fields  field.Name
    end
    begin
      # Move to the first record/row, if any exist
      recordset.MoveFirst
      # Grab all records
      @data = recordset.GetRows
    rescue
      @data = []
    end
    recordset.Close
    # An ADO Recordset's GetRows method returns an array 
    # of columns, so we'll use the transpose method to 
    # convert it to an array of rows
    @data = @data.transpose
  end

  def close
    @connection.Close
  end
end

測試代碼如下:

db = SqlServer.new
db.open
db.query("SELECT PLAYER FROM PLAYERS WHERE TEAM = 'REDS';")
field_names = db.fields
players = db.data
db.close

db = SqlServer.new('localhost', 'sa', 'SOMEPASSWORD') 
db.open('Northwind') 
db.query("SELECT * from Customers;") 
puts field_names = db.fields 
cust = db.data 
puts cust.size 
puts cust[0].inspect 
db.close 

抄到的別人版本的:

 MSSQL 
 require "dbi" 
 require "win32ole" 
 WIN32OLE.codepage = WIN32OLE::CP_UTF8 
 require 'iconv' 
 Re_cn=/[\x7f-\xff]/ 
  
 class MssqlDb 
  attr_accessor :mdb, :connection, :data, :fields 
  
  def initialize(host,mdb,user,pass) 
   @host= host 
   @mdb=@database= mdb 
   @username= user 
   @password= pass 
   @connection = nil 
   @data = nil 
   @fields = nil 
  end 
  
  def open  
   connection_string = "Provider=SQLOLEDB.1;User ID=@username;password=@password;Data Source=@host,1433;Initial Catalog=@mdb" 
   @connection = WIN32OLE.new('ADODB.Connection') 
   @connection.Open(connection_string) 
    @password='' 
  end 
  
  def query(sql) 
   recordset = WIN32OLE.new('ADODB.Recordset') 
   recordset.Open(sql, @connection) 
   @fields = [] 
   recordset.Fields.each do |field| 
    @fields  field.Name 
   end 
   begin 
    @data = recordset.GetRows.transpose 
   rescue 
    @data = [] 
   end 
   recordset.Close 
  end 
  
  def queryGB(sql) 
   if sql=~ Re_cn 
   sql = utf8_to_gb(sql) 
   end 
   recordset = WIN32OLE.new('ADODB.Recordset') 
   recordset.Open(sql, @connection) 
   @fields = [] 
   recordset.Fields.each do |field| 
    @fields  field.Name 
   end 
   begin 
    @data = recordset.GetRows.transpose 
   rescue 
    @data = [] 
   end 
   recordset.Close 
  end 
  
  def execute(sql) 
   @connection.Execute(sql) 
  end 
  
  def executeGB(sql) 
   if sql=~ Re_cn 
   sql = utf8_to_gb(sql) 
   end 
   @connection.Execute(sql) 
  end 
  
  def close 
   @connection.Close 
  end 
   
  def utf8_to_gb(s) 
   p 'conv to gb18030' 
   Iconv.conv("GB18030//IGNORE","UTF-8//IGNORE",s) 
  end 
  def gb_to_utf8(s) 
   p 'conv to utf8' 
   Iconv.conv("UTF-8//IGNORE","GB18030//IGNORE",s) 
  end  
 end 
  
  
  
  
  
  
 ACCESS 
 require "win32ole" 
 class AccessDb 
   attr_accessor :mdb, :connection, :data, :fields 
  
   def initialize(mdb=nil) 
     @mdb = mdb 
     @connection = nil 
     @data = nil 
     @fields = nil 
   end 
  
   def open 
     connection_string = 'Provider=Microsoft.Jet.OLEDB.4.0;Data Source=' 
     connection_string  @mdb 
     @connection = WIN32OLE.new('ADODB.Connection') 
     @connection.Open(connection_string) 
         p 'access open ok.' 
   end 
  
   def query(sql) 
     recordset = WIN32OLE.new('ADODB.Recordset') 
     recordset.Open(sql, @connection) 
     @fields = [] 
     recordset.Fields.each do |field| 
       @fields  field.Name 
     end 
     begin 
       @data = recordset.GetRows.transpose 
     rescue 
       @data = [] 
     end 
     recordset.Close 
   end 
  
   def execute(sql) 
     @connection.Execute(sql) 
   end 
  
   def close 
     @connection.Close 
   end 
 end 


您可能感興趣的文章:
  • 淺談Ruby on Rails下的rake與數據庫數據遷移操作
  • 在Ruby程序中連接數據庫的詳細教程
  • Ruby中訪問SQL Server數據庫的配置實例
  • ruby+nokogori抓取糗事百科前10頁并存儲進數據庫示例
  • Ruby on Rails框架程序連接MongoDB的教程

標簽:荊門 永州 張家界 遼寧 普洱 梧州 三沙 公主嶺

巨人網絡通訊聲明:本文標題《Ruby連接使用windows下sql server數據庫代碼實例》,本文關鍵詞  Ruby,連接,使用,windows,下,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Ruby連接使用windows下sql server數據庫代碼實例》相關的同類信息!
  • 本頁收集關于Ruby連接使用windows下sql server數據庫代碼實例的相關信息資訊供網民參考!
  • 推薦文章
    校园春色亚洲色图_亚洲视频分类_中文字幕精品一区二区精品_麻豆一区区三区四区产品精品蜜桃
    欧美天堂一区二区三区| 亚洲1区2区3区视频| 亚洲图片欧美一区| 欧美做爰猛烈大尺度电影无法无天| 中文一区在线播放| 色偷偷久久一区二区三区| 亚洲制服欧美中文字幕中文字幕| 欧美在线色视频| 理论片日本一区| 国产精品亲子伦对白| 欧美色图片你懂的| 国产99精品国产| 午夜日韩在线电影| 欧美国产欧美综合| 337p亚洲精品色噜噜| 粉嫩aⅴ一区二区三区四区| 亚洲精品美国一| 久久久久久久久久久久久久久99| 色猫猫国产区一区二在线视频| 久久se精品一区精品二区| 亚洲日穴在线视频| 欧美色偷偷大香| 一区二区成人在线| 久久男人中文字幕资源站| 一本久久a久久精品亚洲| 激情综合色播激情啊| 亚洲国产欧美在线| 亚洲人成电影网站色mp4| 欧美一区二区三区人| 不卡在线视频中文字幕| 美国十次综合导航| 亚洲天堂免费看| 国产日韩精品一区二区三区| 日韩欧美一二三| 91久久一区二区| 国产一区二区三区在线观看免费视频 | 色婷婷狠狠综合| 日韩综合一区二区| 亚洲激情自拍偷拍| 亚洲欧洲日产国码二区| 久久久一区二区三区| 欧美精品v日韩精品v韩国精品v| 成人午夜短视频| 国产九色精品成人porny| 亚州成人在线电影| 艳妇臀荡乳欲伦亚洲一区| 国产精品国产a| 久久久久久久一区| 久久久久国产精品人| 久久久美女毛片| 久久综合久久综合久久综合| 日韩一区二区三区免费观看| 日韩欧美亚洲另类制服综合在线| 欧美日韩黄色一区二区| 欧美在线免费视屏| 欧美老女人在线| 91麻豆精品国产91久久久资源速度| 欧美人妇做爰xxxⅹ性高电影| 色婷婷综合久久久久中文一区二区 | 欧美精品一区二区三区在线 | 日韩欧美国产综合一区 | 精品在线播放午夜| 久久aⅴ国产欧美74aaa| 精品一区二区三区视频在线观看 | 久久av资源网| 国产精品996| 91在线一区二区三区| 色噜噜夜夜夜综合网| 欧美性猛交xxxx乱大交退制版 | 日韩电影免费一区| 狠狠v欧美v日韩v亚洲ⅴ| 波多野结衣亚洲一区| 色伊人久久综合中文字幕| 欧美性生活影院| 日韩视频免费观看高清在线视频| 欧美国产1区2区| 亚洲国产综合91精品麻豆| 日本欧美韩国一区三区| 精品一区二区免费视频| 波多野结衣视频一区| 欧美日本国产一区| 久久人人97超碰com| 亚洲美女在线国产| 久久成人免费电影| 欧美中文字幕一区| 国产亚洲1区2区3区| 一区二区三区视频在线观看| 久久成人免费网站| 欧美天堂亚洲电影院在线播放| 欧美一区二区三区喷汁尤物| 国产精品女主播av| 日韩不卡在线观看日韩不卡视频| 国产一区二区在线观看免费| 日本韩国一区二区三区视频| 久久久久久久久久看片| 亚洲一区二区三区爽爽爽爽爽| 裸体歌舞表演一区二区| 成人动漫一区二区在线| 这里只有精品视频在线观看| 一色桃子久久精品亚洲| 蜜臀av亚洲一区中文字幕| 99麻豆久久久国产精品免费 | 欧美电影免费观看高清完整版在线 | 欧美高清视频在线高清观看mv色露露十八 | 久久精品国产一区二区三| 91浏览器入口在线观看| 久久美女高清视频| 男人的天堂亚洲一区| 欧美性猛交一区二区三区精品| 国产精品毛片a∨一区二区三区| 久久激情五月激情| 欧美三级电影一区| 国产精品福利一区二区三区| 极品少妇xxxx精品少妇| 欧美一区二区三区色| 国产精品免费久久久久| 国产精品一区二区你懂的| 日韩午夜激情免费电影| 日韩精彩视频在线观看| 欧美日韩精品二区第二页| 一区二区在线观看视频在线观看| 不卡一区在线观看| 亚洲三级在线播放| 日本二三区不卡| 亚洲免费电影在线| 色婷婷一区二区| 一区二区三区欧美视频| 欧美色精品在线视频| 亚洲图片欧美色图| 欧美亚洲丝袜传媒另类| 亚洲观看高清完整版在线观看| 欧洲视频一区二区| 五月婷婷综合激情| 91精品国产综合久久精品app| 日日欢夜夜爽一区| 欧美成人激情免费网| 国产一区在线不卡| 国产欧美日韩亚州综合| 97久久超碰国产精品| 亚洲综合久久久久| 欧美一区二区精美| 国产成人av福利| 欧美国产乱子伦| 在线免费观看日韩欧美| 日韩av午夜在线观看| 欧美一区二区三区思思人| 国产精品1区2区3区| 日韩毛片在线免费观看| 国产精品影音先锋| 亚洲色图一区二区| 欧美男女性生活在线直播观看| 日韩avvvv在线播放| 久久老女人爱爱| 色婷婷综合中文久久一本| 五月综合激情婷婷六月色窝| 久久久久久久久久久黄色| 91免费观看在线| 精品在线一区二区| 亚洲精品国产无套在线观| 欧美不卡123| 在线视频国内自拍亚洲视频| 激情偷乱视频一区二区三区| 亚洲男人的天堂在线aⅴ视频| 欧美二区三区的天堂| 精品一区二区国语对白| 亚洲女同一区二区| 欧美tickling网站挠脚心| 99国产精品99久久久久久| 亚洲电影视频在线| 国产精品青草久久| 5566中文字幕一区二区电影| 成人免费毛片片v| 日韩精品久久理论片| 国产女同性恋一区二区| 欧美久久久久免费| caoporn国产精品| 欧美a级理论片| 一区二区三国产精华液| 国产午夜精品久久| 日韩一区二区三区在线视频| 成人午夜在线免费| 国产伦理精品不卡| 日韩二区三区在线观看| 自拍偷自拍亚洲精品播放| 精品久久久久一区| 欧美精品日韩一区| 97久久精品人人做人人爽| 久久国产精品区| 午夜精品一区在线观看| 亚洲黄色在线视频| 国产精品欧美久久久久无广告 | 日本不卡视频一二三区| 夜夜亚洲天天久久| 国产精品色哟哟| 国产亚洲精品中文字幕| 精品美女被调教视频大全网站| 欧美日韩视频在线观看一区二区三区| 95精品视频在线| 91麻豆文化传媒在线观看| 91视频在线观看免费|