5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

データベースプログラミングに最適な言語は何か

1 :NAME IS NULL:04/12/17 12:05:27 ID:LnFmYpJx
データベースプログラミングに最適な言語は何かを論じたい。
まず、漏れは Ruby を推したい。
内部イテレータのおかげで、短いコードでデータの取得、メモリの解放が可能だ。

Perl や PHP はオブジェクト指向の機能が不足である。Javaやは型宣言を
せねばならず、ムダにコードが長くなる。保守性は悪くなる。
つまり、Javaは別の分野で用いるべきである。

.NETやPythonは知らないが、.NETはJavaの片割れでたいしたメリット無いみたいだし、
PythonはRubyのライバルとされているが、どうか。イテレータの書きやすさは Ruby のほうがいいな。

2 :NAME IS NULL:04/12/17 12:42:06 ID:???
RUBYYYYYYYYYYYYYYYYYY!!!!!!

3 :NAME IS NULL:04/12/17 12:45:04 ID:rsdHk+n+
Ruby知りません。
データベース呼び出してるところのソースを載せていただけると
ありがたい。


4 :NAME IS NULL:04/12/17 12:46:50 ID:???
>>3
http://ruby-dbi.sourceforge.net

5 :NAME IS NULL:04/12/17 15:25:46 ID:eTOTMI26
データベースプログラミング?
C/C++じゃねーか?
データベース検索登録アプリケーションなら、PerlかJAVAあたりだが。

6 :NAME IS NULL:04/12/17 15:26:56 ID:???
>>1はJavaのコードをテキストエディタかなんかで保守してるのか?
IDE使うのなら、Javaが一番メンテしやすいが。

7 :NAME IS NULL:04/12/17 17:00:08 ID:mRzc/gpV
T-SQLとかPL/SQLじゃだめ?

8 :NAME IS NULL:04/12/17 17:02:27 ID:???
PL/SQLでクライアント作れるならいいんじゃねーの?

9 :NAME IS NULL:04/12/17 19:01:00 ID:dKX3DfZl
VBだろ


10 :NAME IS NULL:04/12/17 19:45:18 ID:rsdHk+n+
>4 ありがとうございます。なんとなくわかりました。
ただ、他の言語に比べてどこがデータベース向きなのですか。

11 :NAME IS NULL:04/12/17 20:26:12 ID:b9scDf06
>>9
だね。

12 :NAME IS NULL:04/12/17 20:35:41 ID:EPB4yf3L
PowrBuilderの、ソース内にそのままSQLを書いて
変数のやりとりを出来るところは便利だった。
といっても、PowerBuilder使ってた人なんて
ここにはまずいないだろうな・・・



13 :NAME IS NULL:04/12/17 22:30:06 ID:???
4 のサイトのコードをコピペしてみる。

require 'dbi'
DBI.connect('DBI:Mysql:test', 'testuser', 'testpwd') do | dbh |
  puts "inserting..."
  sql = "insert into simple01 (SongName, SongLength_s) VALUES (?, ?)"
  dbh.prepare(sql) do | sth | 
    1.upto(13) { |i| sth.execute("Song #{i}", "#{i*10}") }
  end 
  puts "selecting..."
  dbh.select_all('select * from simple01') do | row |
    p row
  end
  puts "deleting..."
  dbh.do('delete from simple01 where internal_id > 10')
end

ブロックのおかげで処理のスコープが視覚的に分りやすいというのはあると思うが、
別段データベースに限ったことではないしな。
ライブラリの整備や開発環境のサポートを考えれば、
Class::DBI のある Perl や OR マッピングライブラリが盛んな Java の方が数歩先んでている。


14 :NAME IS NULL:04/12/17 23:23:14 ID:???
Developer2000使ってPL/SQLと怪しげなパッケージ(組み込み関数)でプログラム作ったっけ・・・。

15 :NAME IS NULL:04/12/17 23:56:16 ID:???
>>13

データベースからの受け取り方で一番いいのは、
やはりハッシュ型なんだよ。キーを示して値を取る。

v = row['name']

または
v = row[:name]

これでいいじゃん。最も美しい。
わざわざオブジェクトにマッピングする意味は無いんだよ。
開発環境なんて、それの使い方覚える手間かかるじゃん。
スクリプト言語プラットフォームなら最低限、エディタがあればいい。
Javaは型宣言とかいろんな設定のために編集するもろもろのxmlファイル類を
ツールの手助け借りてやらないといけない。
本当は、実を取れば、こんな個別にツールの使い方覚えるまでもない。

16 :NAME IS NULL:04/12/18 01:06:27 ID:???
.NETがその形式やね。

17 :NAME IS NULL:04/12/18 01:11:56 ID:???
ヘジタン ハァハァ

18 :NAME IS NULL:04/12/18 11:50:55 ID:IWYXFWeN
10 を書いたものです。>1 にしっかりした説明があるのに
間の抜けた事を書きました。じつは、データベースに最適な言語と
いう板の題目から、データベースの参照パターンのようなものが
ライブラリーにたくさん入っているというような言語を期待して
しまいました。
SQLの文字列が出てきたのでアレッと思ったのです。
SQLを書かなくて済むような言語はないのでしょうか。


19 :NAME IS NULL:04/12/18 12:10:17 ID:???
>>18

SQLがダメだから、というのは、それはムリだよ。
RDBを扱う以上、SQLを書くことはどうしても必要で。
SQLを書き出すための文字列処理のプログラミングは必ずやることになる。
文字列処理が強力なプログラミング言語は何かなと考えるべきなんだよ。
そうすると、やはりRubyあたりがイイってことになってきちゃう。

XMLにおけるDOMのように、リレーショナルデータベースのリクエストをオブジェクトとして
構築する言語・プラットフォームを越えたAPIってのは、将来はありそうな気がするが
今でもそんなものは無いし、非現実的だ。

20 :NAME IS NULL:04/12/18 12:15:28 ID:???
>>15
取ってきた値をちまちま代入するのがコードの無駄。

21 :NAME IS NULL:04/12/18 12:22:02 ID:???
>>20

なんだよ。
データ取ってきてそれを一切どこにも代入しないってか。


22 :NAME IS NULL:04/12/18 12:25:41 ID:???
>>19 にだ。
>SQLを書き出すための文字列処理のプログラミングは必ずやることになる。
>文字列処理が強力なプログラミング言語は何かなと考えるべきなんだよ。
DB云々ではなく、文字列処理をRubyで覚えたから使ってる orz.

23 :NAME IS NULL:04/12/18 12:33:43 ID:???
>>19
SQL と文字列処理に強いかってのはあんまし関係ないと思うぞ。

>>18
RDB/SQL をデータの格納と取り出しだけの存在とみなすならいいのだけど、
実際には複数テーブルを join して集計したりと、
業務ロジックと密接な処理を SQL を用いて行う場面が多い。

そういった SQL/その RDB でできることをできる限りカバーしようと考えると、
プログラミング言語のライブラリ側に
SQL とほぼ一対一で変換できるようなオブジェクト
(Criteria オブジェクトとか良くあるけどさ) を導入することになる。

が、OR マッピングのライブラリの仕様はまちまちだし、
はまだ SQL でできる範囲をカバーしきれていないので、
それなら SQL をそのまま使った方がいいというのが現状。

24 :NAME IS NULL:04/12/18 12:36:03 ID:???
s/はまだ/まだまだ

>>21
結局エンティティクラスのコンストラクタの引数に渡すか
作ったインスタンスにセッターメソッド使って値を代入することになるので、
それなら直接インスタンスになってくれた方がありがたい。

25 :NAME IS NULL:04/12/18 12:38:33 ID:???
> SQL と文字列処理に強いかってのはあんまし関係ない

いや、自明のことというか、大ありだと思うんだが
Javaでやる文字列処理って、どんなにキレイに書こうとしても知れてるぞ。

26 :NAME IS NULL:04/12/18 12:39:06 ID:???
>>24

なってるじゃん。Hashインスタンスに。

27 :NAME IS NULL:04/12/18 12:42:07 ID:???
>>24

データベースから何か振る舞いを持つオブジェクトを作るって確かによくあること
だと思うが、それをプログラミングしないわけにはいかないだろ。


28 :NAME IS NULL:04/12/18 12:46:58 ID:???
>>27
その部分をライブラリが勝手にやってくれてほしいってこと。

29 :NAME IS NULL:04/12/18 12:49:07 ID:???
>>24

そういう「オブジェクトを作る」ってのは、データベースプログラミングの中でも
重要なトピックで、キャッシュが使えるところではキャッシュを使うとか、
ソフトウェア毎に最適な設計は異なるところで、その大切な部分を
自動化なんてできるわけないし、なんかのフレームワークとやらを使って
無理やりしようとしたころで適切なプログラミングよりシンプルに分かりやすく
なんてなりそうにない。

30 :NAME IS NULL:04/12/18 12:54:09 ID:???
それは分るんだけどさ。
定型的だし書いていて何ら面白くないから、
フレームワークに追い出したいわけですよ。

31 :NAME IS NULL:04/12/18 13:00:51 ID:???
>>30

定型的っていうけど、ホントかな。
適切なファクトリーメソッドの実装を見直して、モジュール化というか
プラグイン化を意識したコードにするとよいと思う。
アクセサメソッドが大量にあったりするとキモいね。

フレームワークは何の解決にもならないよ。
手続きがアプリケーション毎に違うからプログラミングするんだ。

32 :NAME IS NULL:04/12/18 13:06:56 ID:???
適切に書かれたファクトリーメソッドがあると
そのシステムの意図がよく伝わると思うんだよね。

33 :NAME IS NULL:04/12/18 13:21:07 ID:???
DB とプログラミング言語の界面はフレームワークに任せて、
その上の部分で 「手続き」 を実装したいんだよね。
なるべく疎な関係にしたい。

34 :NAME IS NULL:04/12/18 13:28:16 ID:???
>>33
> プログラミング言語の界面はフレームワークに任せて

できるわけないし、やる意味ないと思うんだよ。
要求されている機能とデータベースの性質に合わせて
パフォーマンスのカ改善、キャッシュのヒット率を上げるとか
いろいろがんばらんといかんのに。

35 :NAME IS NULL:04/12/18 13:37:01 ID:???
まぁ、タイトなパフォーマンスが要求されるかどうかは、
そんなに必要無いってこともあるかもしれないけど。

しかし、データベースかオブジェクトを作るシーンってそんなに
多いかね。たとえば、社員の勤怠管理のシステム作るとして、
どれだけクラス書くかな、せいぜい6コくらいのクラスで
十分じゃないかしら。

36 :NAME IS NULL:04/12/18 14:45:29 ID:???
パフォーマンスより拡張性重視で使っているからなあ。

今開発運用しているのが 30 位のクラスと同じくらいのテーブルを持ったウェブアプリで
隔月に一度は機能拡張している。
予想以上にユーザが増えたので、今は PostgreSQL なのを Oracle にしようという話もあったりして。
RDB 向きの使い方じゃないのかも。

37 :NAME IS NULL:04/12/18 16:31:22 ID:???
>>36

拡張性を重視するだから、
どの言語を選んでどういう作り方をしているのか教えてくらはい

38 :NAME IS NULL:04/12/18 19:08:11 ID:???
データベースを操作する場合の思いつく手法をあげてみるとこんな感じなのだが、
1.JDBC/ODBC/OLE-DBなどの結果セット型
2.SQL-JやPRO*Cなどの埋め込み型SQL
3.簡易言語などに見られるデータベースを直接操作する命令をもつ言語
4.ストアドプロシージャをベースに簡易言語に発展させたもの
5.O-Rマッピング
6.DBMS固有のAPI(CLI)を直接操作

1を前提にするならオブジェクトが扱いやすい言語が有利か。
パフォーマンスを重視するなら2もいいのだがなぜか人気がない。
3と4は環境依存なのが難点だがプログラム言語の型とデータベースの型が一致することが
多いので、適用分野を間違わなければ使いやすいかもしれない。
5はいまだ未知数で6はもう疲れた・・

39 :NAME IS NULL:04/12/18 19:24:48 ID:???
>>37
Perl と Class:DBI ベースの DB 中間層と
CGI::Application ライクな独自のウェブアプリケーションフレームワーク。

40 :NAME IS NULL:04/12/19 00:22:10 ID:A+bPKqVc
S2DAOあたりではダメかな

41 :NAME IS NULL:04/12/19 13:20:35 ID:???
Class::DBI も S2DAO
O-Rマッピングだよね。

O-Rマッピングの意義を誰か教えてほしいよ。マジで。

振る舞いを持つ必要なんてほとんどないのに
(あったとしても、それはプログラミングすべきだ)、
なんでオブジェクトにするんだ。

なんかマッピングすることを目的にしちゃってて複雑化しすぎ。本末転倒だよ。

42 :NAME IS NULL:04/12/19 16:05:41 ID:???
>>41
お前がオブジェクト指向で設計してないからだろ。

43 :NAME IS NULL:04/12/19 18:23:56 ID:???
>>42

違うんだよ。使うところでしっかり使う。

しかし、たとえば、何かの住所録でもって
人のカラムを表現するのに Human クラスとかなんとか作って、
でもそれに何かメソッドを定義するかといえば、何も無いんだよ。
それでデータベースとオブジェクトとのマッピングとかいっても、お笑いなわけ。

44 :NAME IS NULL:04/12/19 23:11:02 ID:???
だから、必要ないなら使わなきゃいいじゃん。
必要な人がたくさんいるから、それができあがったわけで。

45 :NAME IS NULL:04/12/20 14:35:07 ID:???
O-Rマッピングは「できあがって」はいないと思うな。まだ発展途上だ。
良さそうな香りはするんだが、現状では使ってみると幻滅することが多い。
「必要な人」でも現在のO-Rマッピングには不満を持ってる人は多いと思うよ。

46 :NAME IS NULL:04/12/20 20:07:12 ID:srbYM6J2
フロントエンドはAccess以外に考えられない

47 :NAME IS NULL:04/12/20 21:33:31 ID:???
そんなことより「ID:???」が気になる・・
なんでそんなことになるのさ〜♪


48 :NAME IS NULL:04/12/20 21:57:40 ID:P3k+Hk5h
>38-46 (最)適性の要件について
話をSQLだけに絞って、
SQLの完全なるParserを持つ必要はないのですか。逆に処理系が
SQLを「生成」するとなると必須とおもいますが。

49 :NAME IS NULL:04/12/20 22:40:57 ID:PRMMb90r
>>48

なんで必要なのかしら
理由を教えてくれ

50 :NAME IS NULL:04/12/21 03:04:48 ID:cB2rd/+5
>49 一連の議論を読んでいると、同じ「最適な言語」を競っても
プログラマがSQL文字列を知っている必要があるクラスと
コンパイラがSQLを構成するクラスとありそうに思えたから。
ボクシングとK-1ほどに上がる舞台がちがうのではないか。
Parserが必要と感じるのはもちろん後のクラス。関数型言語で
SQL相当の操作を書くとすれば、文字列操作の云々は的外れ
となり、むしろSQL文字列にどう組み立てなおすかが課題となる。
そんな意味なのですが。

51 :NAME IS NULL:04/12/21 08:05:38 ID:???
データベース側が統一が取れてないからそっちを何とかしないとなぁ。
ドライバやクラスで吸収するには違いが大きすぎる。

52 :NAME IS NULL:04/12/21 10:39:07 ID:2ug2sBNH
>>50

すんません。

コンパイラがSQLを構成するっていうのが、私、あまり知らないのですが。
それは例えばどういうものか教えてくれますか?

53 :NAME IS NULL:04/12/22 22:55:50 ID:JoqolnD5
4,10,18,48,50 と書き込みできた者です。
>52 私も知りません。無責任で申し訳ない。
読み返してみるとParserとかコンパイラとかの用語選択も適切でなかった。それで仕切りなおし。
Lispでと思ったのですが括弧ばかりで上手く説明できそうにないのでProlog風に行きます。
select,into,from 等が適切にオペレータ定義されて、
(select * into X from Table) :- ...... (1)
のようにSQLのパターンが述語として定義されたとします。これをプログラムのなかで
?- ...... ,select * into X from emp, ...... のように使うことは利用者がSQLを知っている
ことを前提にしているという意味で "select * from emp" と文字列で処理するのと
変わりありません。次に、(1)のパターンばかりでなく、考えられる全てのSQLの参照(操作)パターンを
定義できたとします。その上で、
rdb_call('emp表の全ての組',X):- ......... (2)
を定義し、(2) :- の右側で、'emp表の全ての組'を解析して(1) を引き出すことができるとすれば、
この段階で、利用者はSQLを知る必要はなくなります。この例は引数がほとんど自然言語ですから、
相当に複雑になるでしょうが。

(2)のようなライブラリーを充実して、データベースに対処しようとすることはSQL文字列を生成したり
表記する方法を洗練することとはやはりステージが違うと考えるべきだということです。50で述べたかった
ことはそういうことです。(2)のようなライブラーだけでデータベース操作を行い得ないということも当然でしょう。
(2)を目指しながら、(1)のレベルを排除しないというのが現実的な処理系の対応になると思います。
それから、(1)のようなパターンを全て定義済みならば、*.sqlのようなファイルをそのまま実行することも
可能なはずです。Parserという言葉はその意味で使いました。


54 :NAME IS NULL:04/12/22 23:54:55 ID:???
SQL と構文レベル、意味レベルにおいて等価であるなら、SQL そのものを使えばいい。
日本語がネイティブの人間と意思疎通を図るなら日本語が良いのと同じ。
その意味では RDB とオブジェクト指向言語の間の
インピーダンスミスマッチは原理的にすべて解消はできない。

55 :NAME IS NULL:04/12/23 00:39:54 ID:ezyhfnup
> SQL と構文レベル、意味レベルにおいて等価であるなら、SQL そのものを使えばいい。
そう思います。
しかし、RDBモデルが極めてシンプルな構造のモデルだから、SQLのような
論理式で済んでいる、ということはないのですか。優れて恵まれた状況だと。
グラフィックインターフェイスを必要とするようなモデルも視野に入れると、
>1 でRubyが推されたような前提が成立しないのではないか。

56 :NAME IS NULL:04/12/23 20:18:56 ID:???
>>55

現実ではやはりSQLというものが使われてしまっているのよね。

ちなみに、リレーショナルデータベース使うまでもないシーンでも、
RubyにはDBMが簡単に扱えるライブラリが標準で付いてる。

57 :NAME IS NULL:04/12/24 15:35:22 ID:???
>>12
PowerBuilderもVBも使ってたよ。

PowerBuilderはC/S系システム向けだね。
VB知ってれば非常に作りやすいし、VB/VCと違ってocxとか考えなくて良いから楽ちん。
いかんせん メジャーじゃないし 高杉だ。

VisualStadio.net(MSDN)より高いってどういうことよ?(w


58 :NAME IS NULL:04/12/27 00:18:11 ID:ATYXiOMn
ウェブインターフェースでもそうだが
ウィンドウヴィジットによるユーザインターフェースが絡むとなると、
ますます、オブジェクト指向の機能が欲しくなるんじゃなかろうか。

まぁ、Javaもそんなに悪い選択肢だとは思ってないよ。
Javaはウェブプログラミングには向いてないとは思うけどね。
データベースのプログラミングやるなら、
スクリプト言語で組んだほうがどちらにしても効率いいな。

59 :NAME IS NULL:04/12/27 00:21:53 ID:???
>>57
より生産性が高いから(ということにしたいのだろう)
あと、MSDNは薄利多売だからな

60 :NAME IS NULL:04/12/28 14:12:47 ID:+5LiD5/G
>>6

そこがJavaの欠点と言える。
豪勢なIDEが無いとまともに編集できないのはどうか。

それよりは、エディタ一つあればできるものであるほうがいい。


61 :NAME IS NULL:04/12/31 17:24:55 ID:???
>>60
別にソース一本で終わるように作れば、JAVAだって可能だが。
Servletに全部ロジックも表示もべた書きすればいいわけだし。
PerlやPHPはそれをやってるから一本で終わってるだけで、
MVC分割だの、よく使うロジックはわけるだのやってたら、
ソースの本数は増えて、JAVAが普通に複数ソースに
なるようなのと同じになるわけだが。
結局、言語云々ではなく、作り方云々だろ。ソースがどうなるかなんて。

62 :NAME IS NULL:05/01/01 09:12:20 ID:DTmypz3j
>>61
そーすね

63 :NAME IS NULL:05/01/01 17:16:06 ID:???
>>61

いや、どんなに単純化しようとも、JavaにはIDEは必須。間違いない。

作り方云々なのは、それはそうなんだ。当たり前の話。
いい作り方って eXtreme Programming で十分示されているから、
それをうまくやる最適な言語は何かと考えるわけだな。

64 :NAME IS NULL:05/01/01 21:26:46 ID:DTmypz3j
>>62
ソースと掛けてるのか?( ´,_ゝ`)プッ

65 :NAME IS NULL:05/01/01 23:13:57 ID:???
> 62 名前:NAME IS NULL[] 投稿日:05/01/01 09:12:20 ID:DTmypz3j
> 64 名前:NAME IS NULL[] 投稿日:05/01/01 21:26:46 ID:DTmypz3j
> >>62
> ソースと掛けてるのか?( ´,_ゝ`)プッ

お客様にお願いいたします。
釣りもしくは自演をなさるのならせめて ID を変えていただけませんか ?

66 :NAME IS NULL:05/01/02 01:47:14 ID:???
>>63
必須じゃないよ。

67 :NAME IS NULL:05/01/02 02:13:15 ID:???
SCSIのほうがよかんべよ

68 :NAME IS NULL:05/01/02 02:28:19 ID:???
>>63
ソースが1本か2本な人もいるかもしれないのに、JAVAだからと言う理由で
IDE使わなければならないと力説するのは無意味だろう。

69 :NAME IS NULL:05/01/04 15:15:54 ID:9Iyz55u3
>>68

んなアフォな

70 :NAME IS NULL:05/01/04 17:27:59 ID:B6lG7lz8
teratermで日本語打とうすると「ピッ!」とかいってキャンセルされるんだけどなんで?

71 :NAME IS NULL:05/01/05 01:50:27 ID:+z3sOH/k
>>70
オレモ悩んだ ちゃんと金払ったら治ったYp!

72 :NAME IS NULL:05/03/04 02:34:24 ID:EfhcthQ+
cobol

73 :NAME IS NULL:05/03/05 09:17:29 ID:k6L3bLwV
考えてみると、「最適な」というからには、
コンパイラであっても同能力のインタプリタが動かないと
その資格がないのではないか。

74 :NAME IS NULL:05/03/08 20:57:30 ID:J+GOJiO4
PowerBuilder勉強したいのですが、なにか参考になるサイトがあれば教えてください


75 :NAME IS NULL:05/03/12 01:18:20 ID:???
>>74
パワースペースとオンラインヘルプ

76 :NAME IS NULL:05/03/16 09:24:16 ID:kVjMt6r8
やっぱHTMLだろ

77 :NAME IS NULL:05/03/16 23:37:57 ID:eQ2wfiPV
やっぱOTLだろ

78 :NAME IS NULL:05/03/16 23:42:43 ID:???
なんだ、このスレDBの問い合わせ言語比較スレかと思ったら違うのか。

SQLとXBASE以外に知らんからマニアックな話題が飛び交ってるものかと・・・。

79 :NAME IS NULL:05/03/17 03:00:17 ID:???
むしろTCP/IPだろ

80 :NAME IS NULL:2005/03/21(月) 19:55:08 ID:3QUKO9Hm
C/Sで簡単に作る
VB
WEBで簡単に作る
PHP


81 :NAME IS NULL:2005/03/23(水) 17:11:43 ID:???
Delphiも仲間に入れて

82 :NAME IS NULL:2005/03/26(土) 16:55:43 ID:???
ILE RPG

ってのは無しですか。

83 :NAME IS NULL:2005/03/27(日) 15:37:17 ID:???
>>82
OS/400x86版をオープンソースで出してくれたらいいのにな。

84 :NAME IS NULL:2005/03/29(火) 00:30:15 ID:bS+G/8nX
SQL*Plusなんかで動作確認したSQLを、そのままカッペして動く言語はないでしか?
SQL="SELECT"
SQL=SQL+"ID, NAME"
・・・
うざっ!

85 :NAME IS NULL:2005/03/29(火) 00:33:55 ID:???
>>84
SQL言語とか

86 :NAME IS NULL:2005/03/29(火) 18:35:50 ID:???
>>84
昔のSQL*ReportやSQL*Formがそんな言語を使ってました。
もっともあれはあれで うざっ!かったような記憶があります。
最近のJDeveloperはどうな感じなのだろう。

87 :NAME IS NULL:2005/03/31(木) 11:32:21 ID:???
(´-`).。oO(SQL言語?)

88 :NAME IS NULL:2005/03/31(木) 21:37:40 ID:???
PSQL や SQL+ クラスのインタプリタを自ら書く(言語を創る)なら、
LISP,Prologといった記号処理言語が一番ですね。

89 :NAME IS NULL:皇紀2665/04/02(土) 00:07:15 ID:???
>>87
荒川は英語で、ARAKAWA RIVERなわけだが何か?
http://www.ara.or.jp/e/e_index.html

90 :NAME IS NULL:皇紀2665/04/02(土) 02:50:42 ID:???
C#が真打ち

91 :NAME IS NULL:2005/04/02(土) 07:55:17 ID:???
硫黄島は英語で Iwojima Island なのだ

92 :NAME IS NULL:2005/04/02(土) 10:13:06 ID:???
87は当然厳密に、SQ言語とか言うのか?

93 :87:2005/04/04(月) 09:59:33 ID:???
>>89
知ってるが、それが何か関係ある?
>>92
何でそう莫迦なの?

94 :NAME IS NULL:2005/04/04(月) 19:43:18 ID:???
>>87は、SQL言語の何処に食いついたのか説明すべきだろう

95 :NAME IS NULL:2005/04/05(火) 09:25:49 ID:???
1. L は Language。
2. 「SQL を、整形せずに埋め込める言語は?」の問いに
  「SQL」と答える間抜けさ。
3. SQL はプログラミング言語ではない。

取り敢えず >>84 は PL/SQL (サーバサイド) ないし
Pro*C (も言語じゃないが。クライアントサイド) でも使えと。

96 :NAME IS NULL:2005/04/05(火) 22:52:32 ID:???
SQLはプログラミング言語の一つだと思うが、なんでそこまで断言できるのか不思議。

97 :NAME IS NULL:2005/04/05(火) 23:25:17 ID:???
SQLは当然、プログラミング言語。
ただし、Turing Completeではないだけ。

98 :NAME IS NULL:2005/04/07(木) 08:39:43 ID:1iNHWJL5
まじBasicに統一してほしい。まじで

99 :NAME IS NULL:2005/04/07(木) 14:26:06 ID:qOmyg27t ?#
C# か Java がやっぱり委員で内科医?
でも言語の選択よりもバインディングがしやすいかどうかのほうが重要な気がする。

100 :NAME IS NULL:2005/04/08(金) 00:00:54 ID:???
>2. 「SQL を、整形せずに埋め込める言語は?」の問いに「SQL」と答える間抜けさ。

だから、SQL自体もプログラミング言語なんだから、
SQLで完結しろと言うことだろ?

101 :NAME IS NULL:2005/04/08(金) 11:49:43 ID:???
制御構造を持たないSQLを「プログラム言語」っつーのは抵抗あるなあ。
第一、PL/SQLの立場がないじゃないか。

>100
>SQLで完結しろと言うことだろ?
バッチ処理しかしないのかッ!

102 :NAME IS NULL:2005/04/08(金) 12:02:11 ID:jJbVkurV
>バッチ処理しかしないのかッ!
業務にSQLPLUS以外は使わせない! というのはどう?

103 :NAME IS NULL:2005/04/09(土) 14:10:07 ID:Dj2hyJqu
Perl! Perl! Perl!!

104 :NAME IS NULL:2005/04/11(月) 17:37:24 ID:???
PHP + PostgreSQL で使ってますが、
この言語は五本指くらいには入りますか。ほかしらないので・・。

105 :NAME IS NULL:2005/04/11(月) 21:19:23 ID:???
なんの五本指だ?
重くて煩雑なスクリプト言語の五本指か?

106 :NAME IS NULL:2005/04/14(木) 08:15:04 ID:???
現存するかを問わないならば、直接、
char *table;
table := "社員";

select 'A',"所属","社員番号","社員名" from table;

が書ける言語かな。


107 :NAME IS NULL:2005/04/14(木) 12:20:28 ID:Mm8jP2Ai ?#
言語よりもライブラリの方が重要な気がする。

108 :NAME IS NULL:2005/04/14(木) 12:48:51 ID:OLQ4oyeV ?
        /  (___  ___) ヽ
           ./     ノ 人 ヽ    ヽ
    __    ./    //  ヽ ヽ    .ヽ   / ̄\
  ./ ○ ヽ、 /    (__)  (_)    ヽ/  ○  \
/      \,,,--―――''''''''''''''''''''――-/        ヽ
..⌒‐-,,,,_  /:/ヽー―――-、,,__,,,,-―――:||  _,,;-‐''"⌒~~~
     .ヽ/::||::::::::::   (●)    (●)   ||/ヽ
      く ::||:::::::::::::::::   \___/    ||:::::::::ヽ
       ヽヽ:::::::::::::::::::.  \/     ノ_/


109 :NAME IS NULL:2005/04/14(木) 14:22:42 ID:orHzoUFL
松本人志作があるテレビ番組で考えた俳句が入選したそうです。
駅に飾られるとか飾られないとか。
http://messages.yahoo.co.jp/bbs?action=m&board=1835157&tid=bebekdcbfmbbvbana4ngp6g&sid=1835157&mid=1

110 :NAME IS NULL:2005/04/15(金) 08:59:06 ID:VYQOnC31
>>106 このてのはなし、少し前にもあったけど
要するに文字列操作をしなくてすむ言語が「最適な」資格を持つと?

111 :NAME IS NULL:2005/04/15(金) 10:52:43 ID:???
>>110
>>84 にとって。

Oracle なら PL/SQL か、Pro*C って選択はあり。

112 :NAME IS NULL:2005/04/15(金) 20:30:18 ID:???
その昔、Oracle Power ObjectというVisual Basicもどきでoracleの
埋め込みSQLが使えるものがあったが、最近見なくなった。

113 :NAME IS NULL:2005/04/19(火) 11:44:32 ID:???
>>110-112 埋め込むとなると、いかにもSQLの仕様が悪い。
select (ename,empno,deptno) from emp が許されなかったり、
where #job=clerk でよかったのに job='clerk' とした。
ほかの言語の構文規則と衝突したり、曖昧さを克服し難くした。



114 :NAME IS NULL:2005/04/19(火) 16:51:52 ID:???
埋め込み型はWHENEVER xx GO TO や SQLCODE などエラー処理まわりがいかにも古めかしい。

115 :NAME IS NULL:2005/04/19(火) 17:01:43 ID:???
>>99

型定義マストとなるとねー

while(result.hasNext()){
  Map personData = (Map)result.next();
  Integer age = (Integer)personData.get("age");
  ..

みたいなのいるわけでしょ。なんかコードが長くなるだけで、メリットが無いと思う。

キャストがめんどくさいってんで、なんかクラスをわざわざ定義してマッピングするなんてこと
やると死ぬほど逆にさらに面倒で。それを自動化するライブラリを使うと、
さらに悲しいことに、マッピング方法を勉強したり、それで設定ファイルを書いたり、
マッピングするライブラリの仕様変更にあわせて、それを使ったソフトも更新しなきゃいけないし、
泥沼よ。
データ格納するだけなんだから、それに適した型をHashMapを使えってなもんだ。

result.each { |person|
 age = person[:age]
}

これでいいじゃん

116 :NAME IS NULL:2005/04/20(水) 10:31:48 ID:yYG4FWyS
>>113 SQL言語を遅延評価付の制約論理型言語に置き直す。
そうすれば、このスレの解も決まる。

117 :NAME IS NULL:2005/04/22(金) 09:02:34 ID:??? ?#
>>116 SQL の S はどうなるんだよ!!

118 :NAME IS NULL:2005/04/23(土) 10:53:08 ID:???
>>1 の内部イテレータは表現上の"洗練"ということだと思う。
データベースプログラミングでより重要なことは全解の取り込みを想定しての、
動的なメモリー管理や、リスト処理のしやすさではないだろうか。

119 :NAME IS NULL:2005/04/24(日) 03:02:44 ID:???
>>118
「全解の取り込み」ってのは謎だが
メモリ管理・リスト処理なんつーのは別にデータベースプログラミングに限らず超重要事項というか、
データベース処理では確かにリストの扱いが楽なほうがいい。


120 :NAME IS NULL:2005/05/17(火) 03:08:10 ID:???
カーソルもやりやすいといいなあ

121 :NAME IS NULL:2005/05/19(木) 22:55:58 ID:GAlLtBqS
>>112

OPOはDEVELOPER2000との社内抗争に負けて消えていきました。

122 :NAME IS NULL:2005/05/20(金) 05:31:18 ID:???
言語の話から逸れるけど、接続インターフェースのデキの良さ
(安定性とか制限の少なさとか)って観点ではどんなもんでしょ?

例えば、jdbcとRuby/DBIを比べると、
特に相手がOracleなんかだとRubyでは↓こういう
http://www.jiubao.org/ruby-oci8/index.ja.html
αバージョンのドライバしか出てないけど、
jdbcだったらOracleから正式にドライバが出てるからjdbcの方が安心だな、とか。

123 :NAME IS NULL:2005/05/20(金) 11:40:35 ID:???
>>122
相手が Oracle なら Pro*C 最強。

124 :NAME IS NULL:2005/05/20(金) 23:47:49 ID:???
>>122
そういう、PHPに不利なルールを持ち出すと、暴れる人が出てきちゃうよ。

125 :NAME IS NULL:2005/05/21(土) 00:04:08 ID:???
うがー!!!

126 :NAME IS NULL:2005/05/22(日) 11:54:22 ID:???
PostgreSQL + VisualC++.NETでGUIベースのアプリを作ろうと
思っちょります。

ただ、いかんせんVisual系言語はまったくのど素人で、どなたか、
VisualC++からPostgreSQLのデータを読み書きするための
サンプルプログラムなんぞあったら、あるいはここにある、ちゅうのを
教えてもらえるとありがたいです。

たぶん、ODBCを使うんだろうぐらいは考えているんですが・・・。


ちなみに当方の技術レベルは、こんなかんじです。

●ORACLEのDBA
 (ORA-600などの内部エラーをサポセンとやりとりしながら対処するぐらい)
●C言語中級者の下(構造体まで。ポインタほぼ全滅)
●シェルスクリプトで作りたいものが作れる


127 :NAME IS NULL:2005/05/22(日) 18:51:45 ID:???
スレ違い。
あと、ポインタもわかってない奴は中級とは言いませんので、
うぬぼれるのもいい加減にしてね。
つか、ポインタもわかってないやつが、PostgreSQLのインターフェース
使えるようになるとは思えんが。

128 :NAME IS NULL:2005/05/22(日) 20:01:15 ID:???
>>127
人を罵倒するだけして、けっきょく建設的な話は全く出さないんだね。屑人間っぽい。
死んでくれ。

129 :NAME IS NULL:2005/05/22(日) 20:29:53 ID:???
スレ違いなのに建設的な話が出ると思ってる方が屑。

130 :NAME IS NULL:2005/05/22(日) 20:41:35 ID:???
突っ込みどころ満載だが、スレ違いなのでぐっと我慢しておこう

131 :NAME IS NULL:2005/05/23(月) 01:50:48 ID:n0DbznC0
なぜ Perl ではだめなのか小一時間。

132 :NAME IS NULL:2005/05/23(月) 13:05:49 ID:???
まあ質問スレでもないのに
質問してくるような頭の持ち主は
どこにでも湧いて出る。

133 :NAME IS NULL:2005/05/29(日) 09:30:46 ID:???
て言うか、ググルなりポスグレのユーザー会のページに行ってマニュアルダウンロードするなりすることもできない奴を相手にしてもしょうがないよね。

134 :NAME IS NULL:2005/05/30(月) 09:48:08 ID:???
上でRuby Ruby言いながら素のDBIしか使う頭のないやつは
ActiveRecordをググって調べてこい


135 :NAME IS NULL:2005/06/01(水) 15:37:33 ID:???
操作性とパフォーマンスが両立しないことが多いから
どちらに主眼をおくかで最適の基準が変わってくる。
あとはプラットフォームへの依存性の有無も評価が分かれるところだ。

136 :NAME IS NULL:2005/06/13(月) 01:33:55 ID:???
仕事でSQLJを使わされているんだけどさぁ、最低最悪ですわ。

時々好きな人がいるからおっかないけどさぁ、あんなものどこが良いわけ?

137 :NAME IS NULL:2005/06/16(木) 13:54:50 ID:???
埋め込みSQLはDBの下位APIと相性が良くて、プログラマーから見えないところで
かってにいろいろやってしまう要素が少なく安定してパフォーマンスが良い
プログラムが書ける。欠点は構文の仕様が古すぎる点とデバッガやIDEなどが対応
してるものがまれだという事。Oracleはなぜか以前から埋め込みSQLが好きみたい
で、SQLJがjavaの規格に追加されたのもOracleのプッシュがあったからと聞いたこ
とがある。真偽は確かめてないけどね。

138 :NAME IS NULL:2005/07/03(日) 19:35:18 ID:6zLtHLps
Pro*Cに関するいいサイト教えて

139 :NAME IS NULL:2005/07/03(日) 23:08:22 ID:???
>>136
組みやすいんじゃないか?比較的に

140 :NAME IS NULL:2005/07/09(土) 09:42:10 ID:???
最悪と言うが、何と比べて最も悪いと言ってるんだろうか?
よく知らないから効率が悪いというのは言語が最悪だからとは言わんぞ。

141 :NAME IS NULL:2005/07/12(火) 22:38:30 ID:???
何だかんだ言ってAccess で十分な件について

142 :NAME IS NULL:2005/07/12(火) 23:35:18 ID:???
Accessは、業務フローをそのまま作るには楽だけど、
大量データを効率的に管理できるかというと、無理っぽい。
個人商店なんかだったら、まぁ行けるだろうけど。

143 :NAME IS NULL:2005/08/12(金) 16:52:47 ID:???
AccessをクライアントにしてMySQLをサーバにしてもダメ?

144 :NAME IS NULL:2005/08/12(金) 22:08:28 ID:???
Accessで何か操作をしたときに、どれだけ重いクエリが投げられると思ってるんだ。
VBやWebで専用クライアント作った方が身のため。

145 :NAME IS NULL:2005/08/17(水) 00:28:18 ID:???
>>144
ACCESSのプロジェクトファイルを知らないのですね!( ´,_ゝ`)プッ

146 :NAME IS NULL:2005/08/17(水) 08:48:30 ID:???
>>144
「VB」といった時点でたいした(ry


147 :NAME IS NULL:2005/08/17(水) 10:43:49 ID:???
AccessをクライアントにしてMySQLを操作する話だろ。

148 :NAME IS NULL:2005/08/17(水) 21:35:29 ID:???
MySQLの利点を何もかも台無しにするけどな。
SQLServer買わなくいいだけましか。

149 :NAME IS NULL:2005/08/18(木) 00:04:46 ID:???
>>148
そんな貧乏な貴方にオススメなのがMSDE!

150 :NAME IS NULL:2005/08/19(金) 20:25:07 ID:???
MSDE使ったら負けかな。

151 ::2005/08/19(金) 20:26:45 ID:???
こういうヤシに限って何も作れないw

152 :NAME IS NULL:2005/08/19(金) 22:50:11 ID:84mADTfE
緊急告知!

今VIPと韓国サイバーテロ集団が火花をあげて戦っています!
この夏の思い出作りに是非貴方達ももこの祭りに参加しませんか?

↓↓↓詳しくはは↓↓↓

http://ex11.2ch.net/test/read.cgi/news4vip/1124442853/


ご協力、よろしくお願いします。

153 :NAME IS NULL:2005/09/12(月) 19:39:09 ID:???
OpenZOLARってどうよ

154 :NAME IS NULL:2005/09/13(火) 18:36:43 ID:NiyRZPlM


605 :オーバーテクナナシー:2005/06/22(水)20:08:36ID:7MAgOv1F
>603
森の中では飛び道具より待ち伏せして槍で襲うほうが効率的。
飛び道具だとはずしたとき穂先の石が割れてしまいます。
この方法に切り替えることで黒曜石資源が節約できます。

そういえば、原始人さんたちは現生人類ですか?


606 :聖女◆9RaBw0NoLw:2005/06/23(木)18:24:23ID:+/a6UT8F
防具や回避手段の開発も早いほうが良いですよ。


607 :オーバーテクナナシー:2005/06/23(木)19:33:26ID:HGQMIB5O
?>605
超至近距離まで近づき、下手すれば反撃を食らう可能性のある槍の方がいいの?
資%

155 :テクノ:2005/09/24(土) 20:35:45 ID:tZaSDpgU
最新ウイルスください

156 :NAME IS NULL:2005/11/10(木) 14:29:33 ID:kpYXXr2Z
もうperlにはうんざりしてるのでrubyでいい。

157 :NAME IS NULL:2005/11/10(木) 15:36:29 ID:???
久しぶりに上がってきましたね。
このスレでPerlやRubyが候補に挙がることは、
データベース検索とWebが結びついていることが
多くなった証拠と考えて良いのでしょうか。

ところで、COBOLやFORTANからRubyを経由して
データベースにアクセスに行くと言うような
ことは簡単にできるのでしょうか。
ここの部分を担えないと言語仕様がデータベース
向きでも、最適な言語とは言い難いように
思います。

158 :NAME IS NULL:2005/11/11(金) 14:30:02 ID:ne/6/gfo
webならjavaベースのwebアプリケーションソフト使った方がラク。
COBOLやFORTRANから直接DBアクセスできるように下ほうがいいでしょ。rubyを経由する方が面倒。

159 :NAME IS NULL:2005/11/12(土) 02:20:19 ID:???
文字の扱いとメンテナンス性考えたらやっぱperlじゃね?

160 :NAME IS NULL:2005/11/12(土) 03:03:12 ID:wVe/r1jF
自分のソースを自分でメンテするならperlでも問題ないけど、人のperlのソースはメンテキツいよ。
文字の扱いはjcode想定? 自前で便利なように拡張してればあんまり言語の差はない。

161 :NAME IS NULL:2005/11/12(土) 03:22:38 ID:E2XFX19s
C++最強

162 :NAME IS NULL:2005/11/12(土) 08:29:48 ID:???
言語の作りからいったらPrologかな

163 :NAME IS NULL:2005/11/12(土) 11:06:22 ID:wVe/r1jF
DBIで抽象化ってアイデアはいいけど、結局は裏で動いてるのがMySQLなのかOracleなのかで大きくパフォーマンスが変わって仕舞う罠。
それぞれのDBのAPIを直接覚えなくて済む程度の利点?

164 :NAME IS NULL:2005/11/12(土) 12:03:44 ID:???
ひとつには抽象化。
もうひとつが、SQLで表現しにくい部分の処理。
ハンドリングのよい言語に担わせる。
そういう意味ではRubyなんて洒落てる。

165 :NAME IS NULL:2005/11/12(土) 19:55:13 ID:???
>>162
現在のISO標準仕様でいじくってもだめ。
まったく別構文でデータベース用言語として、
設計し直せば有力か。

ISO標準仕様だと
?- select * into X from emp
where job=cleek,
member(A,X), ・・・ これは可。
?- select ename,empno,deptno into X from emp
where job=cleek,
member([A,B,C],X),・・・ これは不可。
?- select (ename,empno,deptno) into X from emp
where job=cleek,
member([A,B,C],X),・・・ こうすれば可。

要するにカンマの使い方を考え直さないといけない。
連言を","ではなく∧で表せば本格的だが、キー入力が大変。
clerkと'clerk'の差異も判別できない。


166 :NAME IS NULL:2005/11/14(月) 12:05:03 ID:8Wz12F+2
どうも決定打に成るのは無いので、自分で使いやすいクラスをRubyで作った方が速いと言う結論に達した。
金とるなら、WebLogicでも使って儲けた方がいいし(w

167 :NAME IS NULL:2005/12/06(火) 13:52:52 ID:lvj5AnH/
C#のLINQはどう?

168 :NAME IS NULL:2006/06/22(木) 02:52:21 ID:???
mdb相手にDelphi使ってる俺が最漢な件

169 :NAME IS NULL:2006/06/23(金) 21:01:38 ID:???
問い合わせ処理と一般的なロジックを同じ平文で記述できるdBASE言語が最強。

170 :NAME IS NULL:2006/06/23(金) 23:12:54 ID:???
ああそうですか

171 :NAME IS NULL:2006/09/12(火) 00:49:17 ID:???
最近はVC++からsqlite3を使ってる。
とりあえずヘルパークラス書いて、使う分にはこんなかんじ。

まあなんだ、C++でもPerlでも記述そのものに大きな差があるとは思えないな。
文字列加工もasprintfで十分だし、正規表現を使いたいならpcreを入れれば済む話だ。

でもDBIみたいなのが普及してないのは確かに面倒かもしれん。

DB_Connection conn;
if( ! conn.open("foo.db")
|| ! conn.setCryptKey(password)
){
 printf("error=%s\n",conn.getError());
}else{
 DB_Query q;
 if( conn.query(q
  ,"select * from t1 where hoge=? and name=?"
  ,"LT",(__int64)hoge,name
  /* 可変引数でバインドパラメータを設定する */
 )){
  while( q.getNextLine() ){
   int cols=q.getColCount();
   for(int i=0;i<cols;++i){
    DB_Column c = q[i];
    printf("col[%d]=%s\n",i,(const char*)c);
   }
  }
 }
 if( q.hasError() ) printf("error=%s\n",q.getError());
}
if( ! conn.close() ){
 printf("error=%s\n",conn.getError());
}

172 :NAME IS NULL:2006/09/12(火) 22:39:12 ID:???
部下に日本語で指示 これがまさしく最強最適(たまにこけるが、、、)

173 :NAME IS NULL:2006/09/13(水) 09:09:38 ID:???
>>172
それはプログラミングとは言わん。

174 :NAME IS NULL:2006/09/14(木) 20:28:41 ID:???
>>173

ここのスレタイをよく確認するんだ。
"データベースプログラミングに" 最適な言語は何か なので、
"データベースプログラミング言語に" ではない。

従って、口頭で指示して目的が達せられれば、それにこした事はない。

175 :NAME IS NULL:2006/09/15(金) 07:39:45 ID:???
空気よめ

176 :NAME IS NULL:2006/09/16(土) 20:07:32 ID:???
空気を読むための言語を教えてくれw

177 :NAME IS NULL:2006/09/17(日) 13:10:07 ID:???
プログラムを発注する作業はプログラミングとは言わん。あほか。

178 :NAME IS NULL:2006/09/20(水) 21:59:18 ID:???
おまいら、プログラマはストレスたまってるんだなw

179 :NAME IS NULL:2006/09/23(土) 19:21:54 ID:???
部下に仕事を発注するとは言わん。あほか。

180 :NAME IS NULL:2006/10/20(金) 01:16:45 ID:???
でも自分で抱え込んで組んでたら時間がいくら有っても足りないから、うまくforkしまくって、頻繁にプロセス通信して指示して修正して進めた方が負荷は下げられるし、30超えても生き残れる。

181 :NAME IS NULL:2006/12/15(金) 13:58:29 ID:???
>>1 SQL

182 :NAME IS NULL:2006/12/16(土) 19:50:06 ID:???
人を使うのはPGには無理だと思う。
文句一つ言わず動いてくれるPCさえ使いこなせないのに人を使うなんて無理。

部下もうまく動かないことも有るので、同じ仕事を別の部下に指示してRAC構成で使ってるよ。
部下が風邪引いて病欠でも、出社している部下が問題なく処理してくれる。

183 :dbasefun:2006/12/21(木) 22:12:51 ID:jkfblNzY
やっぱ、dbase!
復活してほしい!

184 :NAME IS NULL:2006/12/22(金) 08:42:41 ID:???
>>183
dbXLもFoxProもあるんだが?
個人的にはなにをいまさらって気がする。


185 :dbasefun:2006/12/22(金) 23:33:19 ID:t4nDgAf6
頭の中はこれしか出来ないのだから、、、、。

186 :NAME IS NULL:2006/12/23(土) 00:22:29 ID:???
>>185
英語に自信があるなら
http://www2u.biglobe.ne.jp/~objxbase/
ないのなら
http://www.soupacific.com/products/index.html
英語のマニュアルがバリバリ読めるのならFoxPro使うけどなあ?
試しにFoxProとAccessをGoogleで検索すると圧倒的にFoxProのほうが多い。
マイクロソフトは日本市場なんてAccessで十分なんだと・・・・・



187 :dbasefun:2006/12/23(土) 08:56:41 ID:UqzZREnV
ありがとうございます。
やはり使うならFox proでしょうか?
仕事で他のみんなAccessでやってますが、いちいち邪魔くさいので、
我輩は未だにV_dbaseの最終版v7.1でせこせこやってます。
最後はexcelでデータを出すので、何使ってもいいのですが、なにせ
終わってから5年以上、、、、。まだ使えると思うのですが。

188 :NAME IS NULL:2006/12/23(土) 10:50:33 ID:???
>>187
> やはり使うならFox proでしょうか?

だから、あなたが英語の技術文書くらい読めるぞってなら、迷わずFox proだと思う。
英語のMLに入って質問できるくらいなら、世界中にお友達はいっぱいいる。
情報に不足はないはず。

英語が苦手ならdbXL。
昔の勢いは無いみたいだけど、サザンパシフィックの製品は悪くない。(少なくとも昔は)

別にシステム開発しているわけじゃないんでしょう?
だったら、桐も検討をお勧めする。
ちょっとしたものをちょこちょこと書くならdBaseよりはるかに簡単だし、
エクセルとの親和性も悪くない。
漢字でプログラムを書くのが最初は違和感があるかもしれないけれど、
エクセルのマクロのように操作手順を覚えこませて、
そのままプログラムの一部とするなんてことが出来てしまう。
お気楽さは最高。
体験版がダウンロードできるから試してみたら?


189 :NAME IS NULL:2006/12/25(月) 15:29:58 ID:???
>>165Prologっていうのは本当に、select * from empwhere job=clearkなどという構文が許されるのですか?信じられない

190 :dbasefun:2006/12/26(火) 22:40:50 ID:ftrlN1mn
>>188 助言ありがとうございます。
かの昔、DOS時代に桐v3は少しかじりました。そいで、dbaseに移り、DBXLも
QuickSilverを駆使して、プログラムしてました。その後、V_dbaseで書き上げたのですが、
日本で終わって、我輩のプログラミングも終了。
今は分析ツールとして使っている次第です。
サザンのARAGOも初期は触っていましたが、今は、、、、です。
一度、桐を体験してみます。FOXproの体験版はないのでしょうか?


191 :NAME IS NULL:2006/12/27(水) 08:16:50 ID:8+hxXmHm
ACCESSだろ

192 :NAME IS NULL:2006/12/27(水) 21:44:23 ID:???
>>190
> かの昔、DOS時代に桐v3は少しかじりました。そいで、dbaseに移り、DBXLも
> QuickSilverを駆使して、プログラムしてました。その後、V_dbaseで書き上げたのですが、

かの昔のさらに昔、CP/Mの時代にdBASEIIを始め、Basicをはるかにしのぐ生産性に感動。
その後、QuickSilverまでは良かった。Windows時代になって、dBASEはもちろんのこと
他のデータベースもさっぱり出てこない。やっと出てきたAccess1.0。なんじゃこりゃ?
と思いつつも他に変わるものも無し、しかたなく使い続けて現在に至る。
その他、桐、dBMAGICなどもかなり使いました。

dBASEの良さを知りつつも、あまり戻る気がしないのは、やっぱりSQLの存在が大きい。
大雑把に言ってしまうと、VBAでSQL動かせば大半の処理は済んでしまう。
dBASEのように基本的に1レコードずつ処理するのとはスピードがぜんぜん違う。

入力はフォーム、出力はレポート、途中計算はVBAでSQL文を実行させて処理とすると決めると、
Accessも割と使いやすい。Accessが難しいのは機能が多すぎてしかもダブっていること。
使わないものは思い切って無いものとして割り切ると習得は早いと思う。

> 一度、桐を体験してみます。FOXproの体験版はないのでしょうか?

バージョンアップの時期にはたいてい出すようですけど、今はないみたいですね。


193 :dbasefun:2006/12/27(水) 21:50:22 ID:ydVUbDdK
>dBASEの良さを知りつつも、あまり戻る気がしないのは、やっぱりSQLの存在が大きい。
ごもっとも!確かにSQLを埋め込んですると、早い早い。(まわりは
dbaseで固めてますけど、、、。)
>使わないものは思い切って無いものとして割り切ると習得は早いと思う。
未練がましくやっている俺って、、、、。
色々とご助言ありがとうございました。


194 :cavo:2006/12/28(木) 05:42:01 ID:???
かなりマイナーでありながら、強烈なdynamic binding機能を有する処理系
Visual Objectsというのもあります。Xbase系の言語+オブジェクト指向の
拡張がなされ、1994年に登場。v1の時にダブルバイトサポートを組み込み、
v2の時に言語の識別子のダブルバイトサポートを組み込んでいます。
現行バージョンはよく知らないけど、Xbase系の生き残りです。

ttp://www.cavo.com/
体験版は、
tp://grafxsoft.com/VO_25_Trial_Version/VO_25_Trial.zip

ラムダ式に似たCodeblockという機能を持っていたり、
オブジェクトの配列名に対してメソッド実行すると全要素に呼び出しがかかるとか
スーパークラスに存在しないメソッドを勝手に定義できるとか
かなり変わり者の言語です。

日本では1997年に開発元の日本法人がサポート終了・販売終了にしたので、
成長過程を断ち切られた形になりました。

・・・

メモリリソースが潤沢な現在のコンピュータ環境の場合、
DBFの処理もかなり高速に実行できると思います。
全レコードをいったん読んでしまってメモリ上にキャッシュしてしまえば、
単純な集計処理ならあっという間に終わるでしょう。

クライアントPCのパワーを使うなら、Xbaseの処理系を併用するのも意味が
あるので、RDBMSだけに頼らなくてもいい面だってあると思います。
FoxProの海外事例なんかがそうですが、SQL ServerとFoxProデータベースの
併用によりシステムを構築しているものがあります。
Xbaseに未練があってもいいかも。

195 :NAME IS NULL:2006/12/29(金) 04:36:20 ID:???
別に、
SQL鯖+エクセル
SQL鯖+アクセス
でも割と使えますが?

196 :NAME IS NULL:2007/02/12(月) 02:34:09 ID:bEdYgEdP
ジジイはawk
若者はRubyかPython
汚ねぇコードでも気にならない奇人はPerl
プロ根性のないやつはVB

197 :NAME IS NULL:2007/02/13(火) 09:27:12 ID:???
>>165 何故PrologにSQLなんか使う必要があるの?

198 :NAME IS NULL:2007/02/13(火) 12:45:29 ID:???
>>196
君が低レベルなWeb屋なのは判った。

199 :NAME IS NULL:2007/02/14(水) 09:20:24 ID:???
爺さんはコボル。その見習いの若いのもコボル。
あいつらの頭は進化が止まってる化石。インターネット対応なんて考えが及ばないし。

昔から遣ってる香具師は、ProCとか。最近始めた香具師は、JavaとかPHP。

200 :NAME IS NULL:2007/02/14(水) 09:51:24 ID:???
>>197 RDBとのインターフェイスがSQLである以上、使える方が便利です。
それより データベース言語 = Prolog なのだから
>>1 はPrologを否定することからこのスレを始めるべきでした。


52 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)