問題タブ [sqlmetal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c# - LINQtoSQL:マップファイルは何のためにありますか?
現在、SqlMetalを使用してdbmlとコードファイルを生成しています。VisualStudio2010とSqlServer2000を使用しています。残念ながら、Visual Studio2010はSqlServer2005以降のみをサポートしているため、組み込みのウィザードを使用してコードを生成することはできません。
私は次を使用してdbmlファイルとコードファイルを生成しています。
マップファイルオプションがあることに気づきました。
属性の代わりにXMLマッピングファイルを生成します。/dbmlオプションと一緒に使用することはできません。
マップファイルも使用する必要があるかどうか疑問に思いましたか?コード属性に対するマップファイルの利点は何ですか?
.net - SQL Server CE 4.0 w / SQLmetal
SQL ServerCE4.0を使用する小さなテストプロジェクトをWebMatrixで作成しました。埋め込みSQLを使用するのが好きではないので、WebMatrixによって生成されたSQL ServerCE4.0データベース用にいくつかのLINQ2SQLドメインクラスを作成したいと思いました。残念ながら、SQLmetalは、データベースファイルが破損しているか互換性がないことを訴えています。
SQL Server CE 4.0と互換性のあるバージョンはありSQLmetal.exe
ますか?VisualStudioとは別にダウンロードできますか?
前もって感謝します。
linq - SqlMetal ユーティリティを使用して *SDF から *DBML ファイルを生成する際の問題
sdf ファイルから dbml を生成してみます。
そこで、sqlMetal util を次の場所にローカライズします。 C:\Program Files (x86)\Microsoft SDKs\Windows\v7.0A\Bin
SDF DB ファイル パス:D:\DB_TEST\Spiri_SQL_CE_DB.sdf
だから私は生成dbmlファイルでこのコマンドを試してみてください:
次のエラーが表示されます。
だから私はこのコマンドを試します:
しかし、私はこのエラーが発生します:
最後に、このバージョンのコマンドを試します:
しかし、私は同じエラーが発生します:
ファイル Spiri_SQL_CE_DB.dbml がまだ存在しないことはわかっていますが、このファイルを sqlMetal turil で生成しようとしましたが、何が問題なのですか?
.net - 自動生成されたファイルを MsBuild プロジェクトに含める方法は?
MsBuild 4.0 を使用して、プロジェクト ソース ファイルの 1 つを生成するビルド前イベントを含めました。ただし、生成される前にファイルを探します。
エラー CS1504: ソース ファイル 'c:\src\Data\Main.Designer.cs' を開けませんでした ('未特定のエラー')
ファイルは DbMetal/SqlMetal によって生成されます。これを機能させる方法はありますか?
c# - SQLMetal が SQL Server 2005 データベースから DBML を作成できない
タイトルが既に述べているように、 SQLMetal を使用してdbmlファイルを作成しようとしていますか? このアクションの背景は、 MVC-Applicationで使用するためのすべてのテーブル、関数、ビュー、ストアド プロシージャなどを含むC# コードファイルを作成することです。
今問題に。コマンドから SQLMetal を起動すると、時間がかかり、マイナーな警告が表示され、エラー (DBML1057) が発生します。エラー メッセージを読むと、SQLMetal は存在しないストアド プロシージャを抽出しようとしています。私はデータベースを十数回調べましたが、そのような手順を見つけることができませんでした. たぶん、この手順はずっと前に呼び出されました。つまり、「 GetGameDatesDesc 」という名前の SP を作成し、後で名前を「GetGameDates」に変更します。SQLMetal (私の場合) は " GetGameDateDesc " を探していると思います。しかし、SQLMetal はこの情報をどこから入手したのでしょうか? データベースに単語が見つかりません。私はすべてのビュー、関数を調べました...ボットは役に立ちませんでした。この関数は、データベースの一部ではなくなりました。
編集 -------------- 2011 年 2 月 14 日 --------------
SQLMetal からの警告は次のとおりです。
エラー DBML1042: Type 要素 ' GetGameDatesDesc ' の Column 要素のメンバー属性 ' CCode 'は既に使用されています。エラー DBML1057: Type ' GetGameDatesDesc 'の Column 要素のstorage 属性またはそのデフォルト値 ' _CCode 'は既に使用されています。
c# - SQLMetal を使用して .dbml を生成する
LINQ to SQL は初めてです。オブジェクトリレーショナルデザイナー(O / Rデザイナー)アプローチを試してクラスを生成し、うまくいきました。しかし、SQLmetal ツールを使用してデータベース用に同じ .dbml ファイルを生成する方法はあるのでしょうか。誰でも発射するコマンドを送ってください。データベースに対して SQLmetal コマンドを使用したいだけで、すべてが適切な場所にあるはずです。
データベースのテーブルとビューごとに個別のクラスファイルを作成することも可能ですか Visual Studioで処理するのに役立ちます。
mysql - Mac で MySQL 用の DbLinq SqlMetal を使用するには?
Mac OS で Mono/MonoDevelop を使用しています。MySQL データベースでの LINQ-to-SQL に SqlMetal (Mono に含まれる DbLinq バージョン) を使用する例が必要です。
奇妙なことに、SQLite の例はたくさん見つかりましたが、MySQL の例はありませんでした。MySQL で見つかった例は、Microsoft の SqlMetal.exe を参照しているようです。
SQLite からの sqlmetal コマンドを MySQL 用に調整しようとしましたが、次のメッセージが表示されます。
sqlmetal: databaseConnectionType タイプ 'ByteFX.Data.MySqlClient.MySqlConnection, ByteFX.Data' をロードできませんでした。--with-dbconnection=TYPE オプションを使用してみてください。
助けていただければ幸いです。ありがとうございました。
sql - Linq2Sql の System.DateTime および Sql datetime2 (sqlmetal を使用)
イベントログに新しいSqlデータ型を利用したいのですがdatetime2
(標準の日時は保存時にデータが失われるよりも精度が低いためSystem.DateTime
)、コードを生成するとsqlmetal.exe
次の警告が表示されます:
db.dbml(98) : 警告 DBML1008: DbType 'DateTime2(7) NOT NULL' と Type 'Event' の Column 'CreatedOn' の Type 'System.DateTime' の間のマッピングにより、データベースからロードするときにデータが失われる可能性があります。
列の定義を変更すると、警告は消えますdatetime2(2)
が、2 桁の精度は処理できるよりも低いSystem.DateTime
ですよね? なんで?警告を抑制するにはどうすればよいですか?
linq - 条件が外部エンティティに設定されている場合、Linq クエリを正しく作成するにはどうすればよいですか?
以下は、この問題を説明するためのサンプル データです。
上記の例のテーブルを使用すると、tblPrimary.Name の名前に関連付けられたすべての詳細レコードを返す必要がある「名前」が与えられます。tblPrimary.Name は一意ではないため重複がありますが、日付と時刻が異なるため、実際には異なる項目です。
SQLMetal を使用すると、オブジェクトが 2 つのテーブル間の関係を処理するようにコードが生成されます。これを念頭に置いて、次のようにクエリを作成します。
上記の例のデータを使用して、異なる DateAdded を持つ tblPrimary に 2 つの「John」があり、各 John の tblDetail に 2 つのレコードがある場合、クエリによって返される結果は次のようになります。
私が本当に望んでいるのはこれです:
Joinsを使用せずにこのLinqクエリを解決する方法を誰かが提案できますか? sqlmetal によって生成された 2 つのテーブル間のリレーションシップは、既に結合を処理する必要があると思います。
visual-studio - sqlmetalでの[DataMember]の動作がdbmlデザイナーとは異なる
linq-to-sqlを使用してアプリケーションを引き継ぎ、データベースにいくつかの主要な変更を加える予定です。dbmlデザイナでモデルを更新するためのサポートがないため、代わりにsqlmetalを使用しようとしています。ただし、sqlmetalによって生成されたコードが、dbmlデザイナーによって生成されたcoldeと互換性がないという問題が発生しました。
別のテーブル(モデルなど)へのFKを持つテーブル(車など)がある場合、シリアル化は異なり、関連付け属性のDataMember属性は生成されません。
sqlmetalを使用するときにModelプロパティをデータコントラクトの一部にする方法はありますか?