2014-12-26 43 views
-1

我在我的visual studio上有此命令,但我不認爲我以正確的方式連接了我的數據表。我如何連接下面的數據表?如何使用Sql命令在Visual Studio c#控制檯應用程序上連接多個數據庫

SqlCommand myCommand = new SqlCommand("SELECT User.Id ,User.Name ,Checkpoint.Id ,Checkpoint.Coordinates ,Log.TimeStamp FROM " 
        + "dbo.Users, dbo.Log, dbo.Checkpoints;" ,sourceConnection); 

我的表:

internal class Checkpoint 
    { 
     public int Id { get; set; } 
     public string Coordinates { get; set; } 
    } 

    internal class Log 
    { 
     public DateTime TimeStamp { get; set; } 
     public int CheckpointId { get; set; } 

    } 

    internal class User 
    { 
     public int Id { get; set; } 
     public string Coordinates { get; set; } 
     public string Name { get; set; } 

    } 
+0

我們需要查看錶格來回答這個問題。這裏是一個例子:http://www.w3schools.com/sql/sql_join.asp – Sefa

+0

嗯,你根本沒有加入表格,我們需要看到這三個表格的內容。 –

+0

我加了表 – Amehiny

回答

1

基本上你想要做這樣的事情。下面的sql是假設用於連接的鍵存在。但它應該給你如何加入您的查詢的基本概念,因爲我們沒有這些表的

var sql = @"SELECT User.Id , 
        User.Name , 
        Checkpoint.Id , 
        Checkpoint.Coordinates , 
        Log.TimeStamp 
      FROM dbo.Users User 
       INNER JOIN dbo.Log Log ON Log.UserId = User.Id 
       INNER JOIN dbo.Checkpoints Checkpoint ON Checkpoint.Id = Log.CheckpointId ;" 

你可以找到關於SQL的更多細節加入這裏的內容(哪些列存在於每個):

http://www.w3schools.com/sql/sql_join.asp

更新: 只看見自己的編輯。除非座標對您有意義,否則您無法加入用戶表。對我而言,它並不是。您可能想在上面的SQL示例中添加對日誌表中的UserId的引用。

+0

那麼這是在Sql我想在Visual Studio中查詢 – Amehiny

+0

你在Visual Studio中意味着什麼?你的意思是你有三個列表,每種類型一個? –

+0

我有我的表在SQL中,然後我有我的課在Visual Studio中。我在Visual Studio中加載了我的數據,現在我想在Visual Studio中處理我的數據。所以我使用sql命令獲取所有數據並使用它們操作 – Amehiny

相關問題