私はF#プロジェクトを作成しており、オンラインのmysqlデータベースにいくつかのデータベースクエリを実行する必要があります。誰でも助けてくれますか?私はこのようなものが必要ですF#オンラインMySQL DBに接続してクエリを実行
2
A
答えて
4
MySQL用の.NETドライバをインストールする必要があります。次にSQLproviderをインストールします。ドキュメントにはMySQL用のサンプルがあります。あなたは、DBに接続し、このようにそれを照会します:
type sql = SqlDataProvider<
dbVendor,
connString,
ResolutionPath = resPath,
IndividualsAmount = indivAmount,
UseOptionTypes = useOptTypes,
Owner = "HR"
>
let ctx = sql.GetDataContext()
let employees =
ctx.Hr.Employees
|> Seq.map (fun e -> e.ColumnValues |> Seq.toList)
|> Seq.toList
connstring
はこのようなものになります。
[<Literal>]
let connString = "Server=localhost;Database=HR;User=root;Password=password"
1
をお読みください私もSQLProviderが道だと思いますそうすれば、データベースに対する論理の検証が行われ、データベースが変更されたことに気づくでしょう。
しかし、あなたがしたい場合は、手動で接続することができます
// Reference Nuget package MySql.Data
//#r @"./../packages/MySql.Data/lib/net40/MySql.Data.dll"
open System
open MySql.Data.MySqlClient
let cstr = "server = localhost; database = myDatabase; uid = username;pwd = password"
let ExecuteSqlAsync (query : string) parameters =
use rawSqlConnection = new MySqlConnection(cstr)
async {
do! rawSqlConnection.OpenAsync() |> Async.AwaitIAsyncResult |> Async.Ignore
use command = new MySqlCommand(query, rawSqlConnection)
parameters |> List.iter(fun (par:string*string) -> command.Parameters.AddWithValue(par) |> ignore)
let! affectedRows = command.ExecuteNonQueryAsync() |> Async.AwaitTask
match affectedRows with
| 0 -> "ExecuteSql 0 rows affected: " + query |> Console.WriteLine
()
| x ->()
}
let ExecuteSql (query : string) parameters =
use rawSqlConnection = new MySqlConnection(cstr)
rawSqlConnection.Open()
use command = new MySqlCommand(query, rawSqlConnection)
parameters |> List.iter(fun (par:string*string) -> command.Parameters.AddWithValue(par) |> ignore)
let affectedRows = command.ExecuteNonQuery()
match affectedRows with
| 0 -> "ExecuteSql 0 rows affected: " + query |> Console.WriteLine
()
| x ->()
関連する問題
- 1. F#でVisual Studio 2017でMySQL Dbに接続
- 2. DB接続が成功し、クエリが正しくても、mysqlクエリは実行されません
- 3. JavaでMySQL DBに接続
- 4. Android、リモートDB(MySql)に接続
- 5. エンティティフレームワークエラーでMySQL DBを接続
- 6. ASP Q:MsSQL DB接続後にSQLクエリを実行できませんでした
- 7. ODBC接続テーブルVBAに対してクエリを実行します
- 8. ionicをmysql dbに接続する
- 9. C#を使用してオンラインDBからローカルDBにローカルDBにオンラインdb
- 10. DjangoテストDBに接続するCeleryワーカーを実行します。
- 11. Excel VBA - Oracle DB接続 - 更新クエリの実行が機能しない
- 12. amazon rdsのmysql dbに接続する
- 13. 例外プレイフレームワークでmysql dbに接続中
- 14. ロードされたlibmysql.dllを介してmySQL DBに接続
- 15. C#でmysql dbに接続しようとしています
- 16. Play2.5 MySQLデータベースの接続エラー:データベースに接続できない[DB]
- 17. iOSアプリケーションを現在オンラインのウェブサイトに接続しているmysqlデータベースに接続する
- 18. MySQLでクエリを実行するときにテーブルを接続する
- 19. PHP MySQLは1つの接続で2つのクエリを実行しますか?
- 20. mysqlデータベースに接続できなくてもPythonプログラムを実行し続ける
- 21. JSON&phpを使用してDB Mysqlとアンドロイドアプリを接続
- 22. codeigniterの別のDBに接続して
- 23. JSONでオンラインPHPプラグイン(MySQLデータベース)にCシャープ(ログイン)を接続
- 24. BlazedsとのFlex mySQL db接続
- 25. AWSラムダRDS MySQL DB接続インターフェイスエラー
- 26. 接続用のイグナイターコードLocalhostのリモートMysql DB
- 27. MySql DBリモート接続が遅い
- 28. 外部のmysqlデータベースをdjangoアプリケーションに接続してクエリする
- 29. MySql Workbenchが実行されていないときにJavaプログラムをDBに接続できますか?
- 30. Sequelizeリモートのmysql dbに接続するときにETIMEOUTを接続
sqlproviderは、あなたは、MySQLに接続できるようになります。 http://stackoverflow.com/questions/20685969/type-provider-for-mysql – s952163
「オンラインmysqlデータベース」とはどういう意味ですか? –
データベースがWebホストのようなWebサーバー上にあり、Wampのようなローカルデータベースではないことを確認します。 –