2

OS-X と Windows + SQLite のクロスプラットフォーム開発環境にアドバイスが必要

OS-X および Windows マシンで実行する単純なメンテナンス プログラムが必要ですが、SQLite データベースを 1 回更新する必要があります。

使用事例:

OS-X と Windows の両方でアプリケーションの SQLite データベースのデータベース メンテナンス。

要件

  • SQLite データベースを選択してディレクトリを選択するファイル ダイアログのシンプルな GUI
  • ランタイム環境のインストールはありません。
  • Windows と OS-X で同じコード
  • OS-X の新しいバージョンには Java がインストールされていないため、私は Java を好みません。
  • SQLite のサポート。いくつかのロジックに基づいて、いくつかの SQL スクリプトを実行する必要がある
  • ユーザーは、アプリケーションの開始と停止のみを行い、システムのどこかにあるローカル SQLite データベースを選択して、メンテナンス プログラム = スクリプトを開始する必要があります。
  • (データベース管理ツールは、ユーザーにとって複雑ではありません)
  • オープンソース、フリーウェア、または商用で無料で使用

これは 1 回限りのメンテナンスであるため、できるだけ簡単にする必要があります。

これに最適な開発環境はどれですか?

4

2 に答える 2

1

Tcl/Tk を使用することをお勧めします。

  • SQlite は Tcl 拡張として始まりました
  • SQlite 拡張機能は、SQlite の作成者によって維持されています。
  • Tcl/Tk は多くのプラットフォームで利用できます。
  • Tk は古いですが、まだ維持され、進化している GUI 用のツールキットです。
  • Tcl/Tk ランタイム、SQlite 拡張機能、スクリプトなど、すべてを含む単一の実行可能ファイルであるStarpackにコードをラップできます。
  • Tcl/Tk は、BSD スタイルのライセンスの下でライセンスされています。

GUI のサンプル スクリプトを次に示します。

package require Tk
package require sqlite3

ttk::label .lbldb -text "Database:"
ttk::entry .db -textvariable db
set db {}
ttk::button .seldb -command seldb -text "..."
grid .lbldb .db .seldb -sticky nesw -columnspan 2

ttk::label .lbldir -text "Directory:"
ttk::entry .dir -textvariable dir
set dir {}
ttk::button .seldir -command seldir -text "..."
grid .lbldir .dir .seldir -sticky nesw -columnspan 2

ttk::button .go -command go -text "Go!" -default active
ttk::button .exit -command exit -text "Exit"
grid .go .exit -sticky nesw -columnspan 3

grid columnconfigure . 2 -weight 1
grid columnconfigure . 3 -weight 1
grid rowconfigure . 2 -weight 1

proc seldb {} {
    set res [tk_getOpenFile -initialfile $::db]
    if {$res ne {}} {
        set ::db $res
    }
}

proc seldir {} {
    set res [tk_chooseDirectory -initialdir $::dir]
    if {$res ne {}} {
        set ::dir $res
    }
}

proc go {} {
    # Connect with the database
    sqlite3 db $::db
    # Do some stuff...
}
于 2013-07-05T03:32:43.480 に答える
0

Xojo は、あなたが必要とするすべてを行います。Windows および OS X 用のランタイムを必要としないスタンドアロン アプリを作成できます。また、SQLite のサポートも組み込まれています。

開発には無料で使用できますが、展開用のビルドを作成するにはライセンスが必要です。

http://www.xojo.com

于 2013-07-05T00:26:50.313 に答える