Hello, ADO.NET(IronRuby) World!
Posted on 2月 13th, 2013 by cx20
ADO.NET(IronRuby)
ADO.NET(ActiveX Data Objects .NET)は、ADO の後継で .NET ベースの DBMS 接続用 API である。
.NET データプロバイダを介することで様々な DBMS への接続が可能となっている。
.NET Framework 標準で使用できる .NET データプロバイダとしては、以下のようなプロバイダがある。
データプロバイダ名 |
説明 |
System.Data.SqlClient |
Microsoft SQL Server |
System.Data.OleDb |
OLE DB |
System.Data.Odbc |
ODBC |
System.Data.OracleClient |
Oracle |
ソースコード(IronRuby + ADO.NET + OLE DB + Jet データベース)
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::OleDb
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=hello.mdb;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OleDbConnection.new(conStr)
cmd = OleDbCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close() |
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::OleDb
conStr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=hello.mdb;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OleDbConnection.new(conStr)
cmd = OleDbCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close()
ソースコード(IronRuby + ADO.NET + OLE DB + ACE データベース)
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::OleDb
conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=hello.accdb;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OleDbConnection.new(conStr)
cmd = OleDbCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close() |
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::OleDb
conStr = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=hello.accdb;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OleDbConnection.new(conStr)
cmd = OleDbCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close()
ソースコード(IronRuby + ADO.NET + SQL Server)
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::SqlClient
conStr = "SERVER=(local);DATABASE=master;UID=sa;PWD=P@ssW0rd;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = SqlConnection.new(conStr)
cmd = SqlCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close() |
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data
include System::Data::SqlClient
conStr = "SERVER=(local);DATABASE=master;UID=sa;PWD=P@ssW0rd;"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = SqlConnection.new(conStr)
cmd = SqlCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close()
ソースコード(IronRuby + ADO.NET + Oracle)
require 'mscorlib'
require 'System'
require 'System.Data'
require 'System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
include System
include System::Data
include System::Data::OracleClient
conStr = "Data Source=ORCL;User ID=scott;Password=tiger"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message FROM DUAL"
con = OracleConnection.new(conStr)
cmd = OracleCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close() |
require 'mscorlib'
require 'System'
require 'System.Data'
require 'System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089'
include System
include System::Data
include System::Data::OracleClient
conStr = "Data Source=ORCL;User ID=scott;Password=tiger"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message FROM DUAL"
con = OracleConnection.new(conStr)
cmd = OracleCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close()
ソースコード(IronRuby + ADO.NET + ODBC + MySQL)
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data::Odbc
conStr = "Driver={MySQL ODBC 5.1 Driver};Server=localhost;UID=root;PWD=P@ssW0rd"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OdbcConnection.new(conStr)
cmd = OdbcCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close() |
require 'mscorlib'
require 'System'
require 'System.Data'
include System
include System::Data::Odbc
conStr = "Driver={MySQL ODBC 5.1 Driver};Server=localhost;UID=root;PWD=P@ssW0rd"
sqlStr = "SELECT 'Hello, ADO.NET World!' AS Message"
con = OdbcConnection.new(conStr)
cmd = OdbcCommand.new(sqlStr, con)
con.Open()
reader = cmd.ExecuteReader()
while reader.Read() do
Console.WriteLine( reader.GetName(0) )
Console.WriteLine( "---------------------" )
Console.WriteLine( reader.GetValue(0) )
end
reader.Close()
con.Close()
実行方法(64bit OLE DB 使用時)
実行方法(上記以外)
実行結果
Message
---------------------
Hello, ADO.NET World! |
Message
---------------------
Hello, ADO.NET World!
Tags: ADO.NET
Categories: .NET, ADO.NET, IronRuby