オブジェクトデータベース LINQ, DLinq のスレ (158レス)
1-

41
(1): 2007/09/12(水)01:47 ID:??? AAS
オブジェクトデータベースなんてスレタイに入れるから人が寄りつかねーんじゃねーの?
42
(2): 2007/09/12(水)03:40 ID:??? AAS
「オブジェクトデータベース」とはちょい違うよな。
DBに被せるレイヤとかラッパって感じ。
43: 2007/09/12(水)16:11 ID:??? AAS
>>41>>42
テンプレも含めた案をお願いします。

私は、これからの流れとして、「オブジェクトデータベース」を
つけたほうが良いと解釈していたのですが。
44: 2007/09/12(水)19:54 ID:??? AAS
オブジェクトデータベースといったら普通はOODBで、ORMはOODBではない。
いまのところサポートしてるのはSQLサーバーだけだし。
45: 2007/09/12(水)20:09 ID:??? AAS
オブジェクトデータベースなんて十数年前にその実力以上に妙に
持ち上げられて、RDBの次はODBだなんて言われたこともあるけど、
今じゃ落ち着くところに落ち着いただろ。
「これからの流れ」というより、うさんくさい目で見られる可能性の方が
高いと思うけどねぇ。数年前のXML-DBとおんなじで。

それはともかく、LINQが想定しているのはリレーショナルモデルだから
オブジェクトデータベースとは違うと思うよ。
どちらかというと、3GL埋め込みSQLを今風にOO言語をホスト言語に
してみたらこんなんできましたぁ、ってところだよね。
46
(1): 2007/09/13(木)23:11 ID:??? AAS
単純なラッパーではないということだが
47
(1): 2007/09/14(金)07:22 ID:??? AAS
で、スレタイはどうしたらよいの?
48
(1): 42 2007/09/14(金)08:18 ID:??? AAS
>>46
ラッパーではないっていうのは、「厚み」の問題? もっと根本的に違うとか?

>>47
この調子じゃあ、どう見積もっても次のスレタイを考えるまでに十分な時間がある。
LINQとは何か、結論出てからでいいんじゃね?
LINQってMSの日本語訳によれば、「 .NET 統合言語クエリ」だから、まあそんなとこ
なんじゃね?
49
(1): 2007/09/14(金)23:25 ID:??? AAS
じゃ、とりあえず次スレのタイトルおよびテンプレ案を書いておきます。

「.NET 統合言語クエリ LinQ DLinq のスレ」

マイクロソフトのコードネーム Orcas に搭載予定のオブジェクトデータベースを
実現する、言語統合クエリ(LINQ Language integrated query)
DLINQ (LINQの実装) などについて語り合いましょう。

The LINQ Project
http://msdn2.microsoft.com/en-us/netframework/aa904594.aspx
50: 2007/09/14(金)23:57 ID:??? AAS
人の話聞かねぇ香具師だな
51: 2007/09/15(土)01:55 ID:??? AAS
聞いてるじゃないかw
52: 2007/09/15(土)22:38 ID:??? AAS
Linqって、NHibernateのCriteriaみたいなもの?

マッピング情報をXMLに書き出さなければならない点で、
DLinqはNHibernateに負けているような希ガス。

MSは、こんなものを実装する前に、
ADO.NETドライバの仕様を弄って、
NHibernateを使えなくしたほうが良くねw
53
(1): 2007/09/16(日)13:40 ID:??? AAS
DLinqで使ってるExpression型のLinq構文はCriteriaみたいなものであってる。
普通のLinqで使ってるdelegate型のLinq構文は別物。
マッピング情報は属性(アノテーション)に書き込むタイプ。
開発の手順はDBのスキーマからdbml(xml形式)のファイルを生成。
必要に応じてdbmlを変更。dbmlから属性付きデータクラスを生成となる。
ADO.NETのDataSetと同じで実行時にxmlファイルを参照するわけではない。
54
(1): 2007/09/17(月)01:18 ID:??? AAS
>>48
聞きかじりなので詳しくは分からないんだけど、
ぱっと見で単なるラッパーのようだが目指すところはそれだけではないとのこと
なので、ラッパーだと思ってスルーしている人も
情報収集しておいた方がいいかも?って感じかな

>>49
大文字小文字の使い分けは意味がある?
LINQは全部大文字なのでは?違うのかな… orz

>>53
dbmlファイルってRDBMS使うときの過渡的なものだっけ?
省1
55: 2007/09/17(月)01:40 ID:??? AAS
>>54
全部大文字(現行スレのタイトル)が正しいです。
ミスでした。(^^;
56
(5): 2007/09/17(月)06:07 ID:XYLLhqYU(1) AAS
LINQはさて置いてもDLinqはまだあんまり知られてない感じだから、
ここでデモプロ1本作ってみるよ。数回の連載になるけど過疎ってるから勘弁な。

とりあえず環境はSQL2005Express+.NET3.5日本語Betaでおkすよ。VS2008なしでいける。

まずはDBを作ります。ShopとCustomerで1:nの関係。
sqlcmd -S .\sqlexpress
接続できたら
create database DLinqDemo
go
use DLinqDemo
go
省6
57
(1): 56 2007/09/17(月)06:21 ID:??? AAS
.NET3.5日本語Beta2だけでやるときは3.5と2.0の両方にパスが通ってなきゃいかんので注意。
Path=C:\WINDOWS\Microsoft.NET\Framework\v3.5;C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727;%PATH%

コマンドプロンプトからSqlMetalコマンドを実行します。
sqlmetal /server:.\sqlexpress /database:DLinqDemo /dbml:DLinqDemo.dbml /namespace:demo
userdb.dbmlを編集。ただし今回は編集の必要なし。
もし共用のDBを使ってるなら全ユーザーテーブルが入ってるのでいらないのは削除。

データクラス+マッピング属性のDLinqDemo.csを生成。
DLinqDemo.csはデータベースから直接も作れるのだけど2段階に分けたほうが後々便利。
sqlmetal /code:DLinqDemo.cs DLinqDemo.dbml
58: 56 2007/09/17(月)06:46 ID:??? AAS
以下が基本形でDemoListのようなstaticメソッドが今後増えてくる塩梅です。
コンパイルは cs /o demo.cs DLinqDemo.cs

// demo.cs
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;

namespace demo {
 class Demo {
  static readonly string conn = 
省23
59: 56 2007/09/17(月)07:03 ID:??? AAS
LINQ構文が2つあるけど上段がORM風に更新可能なCustomerオブジェクトを取得している。
クエリーしてないのに関連をたどってShopの情報も取れる。
下段は普通のLINQ風の構文で更新不可。アドホックなクエリーに使う。

demo.exeに適当な引数をつけると、DLinqがどんなSQLをデータベースに投げてるか見れる。
demo.exe log

データが入ってないので次回はデータを入れたいが、繰り返し実行できるように
テーブルを消してしまう処理を書いておこう。
これはデータを直接生のSQLを投げて消してしまうもので、
ORMのキャッシュはスルーしてしまうので注意。あくまでも初期化用。

  static void Cleanup() {
省6
60: 2007/09/17(月)07:10 ID:??? AAS
データの登録。
shop1に対してCostomerを2件。
shop2に対してCostomerを3件追加している。
それぞれ別のやり方で登録してるから見比べて欲しい。

  static void DemoAdd() {
   using(DLinqDemo dc = new DLinqDemo(conn)) {
     if (logFlg) dc.Log = Console.Out;
     var shop1 = new Shop() { ID = "A001", Name="WAHAHA" };
     shop1.Customer.Add(new Customer() { Name="AAAA BBBB" });
     shop1.Customer.Add(new Customer() { Name="AAAA CCCC" });
省13
1-
あと 98 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.725s*