Fetstil Fetstil Kursiv Understrykning linje färgläggning tabellverk Punktlista Nummerlista Vänster Centrerat högerställt Utfyllt Länk Bild htmlmode
  • Forum & Blog
    • Forum - översikt
      • .Net
        • asp.net generellt
        • c#
        • vb.net
        • f#
        • silverlight
        • microsoft surface
        • visual studio .net
      • databaser
        • sql-server
        • databaser
        • access
        • mysql
      • mjukvara klient
        • datorer och komponenter
        • nätverk, lan/wan
        • operativsystem
        • programvaror
        • säkerhet, inställningar
        • windows server
        • allmänt
        • crystal reports
        • exchange/outlook
        • microsoft office
      • mjukvara server
        • active directory
        • biztalk
        • exchange
        • linux
        • sharepoint
        • webbservers
        • sql server
      • appar (win/mobil)
      • programspråk
        • c++
        • delphi
        • java
        • quick basic
        • visual basic
      • scripting
        • asp 3.0
        • flash actionscript
        • html css
        • javascript
        • php
        • regular expresssion
        • xml
      • spel och grafik
        • DirectX
        • Spel och grafik
      • ledning
        • Arkitektur
        • Systemutveckling
        • krav och test
        • projektledning
        • ledningsfrågor
      • vb-sektioner
        • activeX
        • windows api
        • elektronik
        • internet
        • komponenter
        • nätverk
        • operativsystem
      • övriga forum
        • arbete karriär
        • erbjuda uppdrag och tjänster
        • juridiska frågor
        • köp och sälj
        • matematik och fysik
        • intern information
        • skrivklåda
        • webb-operatörer
    • Posta inlägg i forumet
    • Chatta med andra
  • Konto
    • Medlemssida
    • Byta lösenord
    • Bli bonsumedlem
    • iMail
  • Material
    • Tips & tricks
    • Artiklar
    • Programarkiv
  • JOBB
  • Student
    • Studentlicenser
  • KONTAKT
    • Om pellesoft
    • Grundare
    • Kontakta oss
    • Annonsering
    • Partners
    • Felanmälan
  • Logga in

Hem / Forum översikt / inlägg

Posta nytt inlägg


Samma SQL-tabell i två relaterade dataset-tabeller

Postades av 2006-05-29 10:59:48 - Ulf Bodin, i forum asp.net generellt, Tråden har 2 Kommentarer och lästs av 975 personer

Jag ska nästla samma SQL-tabell i två tabeller i ett dataset för en WebService (en tabell med föräldrar definierad av en SQL-sats och en tabell med barn definierad av en annan SQL-sats). När jag skapar en relation mellan båda dessa tabeller får jag ett felmeddelande -"Dessa kolumner har för närvarande inte unika värden.". Samtliga kolumnnamn har unika namn. Kan inte en relation skapas mellan två DataSet tabeller till samma fysiska SQL-tabell eller är jag ute och seglar på annat sätt?

'Hämtar huvudelementen (föräldrar)
strSQL = " SELECT f_Rel_ObjContent.ObjId AS ObjectID, f_Object.Name AS ObjectMetaName, f_Rel_ObjContent.ContentId, f_Rel_ObjContent.ParentContentId as PCID, "
strSQL = strSQL & " f_Rel_ObjContent.Index_order, f_Rel_ObjContent.Duration, f_Content.TextString, f_Content.AltText, f_Content.Class, f_Content.ObjId, f_Content.URL, "
strSQL = strSQL & " f_Content.MaxWidth, f_Content.MaxHeight, f_Content.ImageCropName, f_MetaElement.Name AS MetaElementName, "
strSQL = strSQL & " f_MetaElement.Kategori AS MetaElementCategory, f_MetaElement.Type AS MetaElementType, f_MetaElement.ElementId AS MetaElementID"
strSQL = strSQL & " FROM f_Object INNER JOIN"
strSQL = strSQL & " f_Rel_ObjContent ON f_Object.ObjId = f_Rel_ObjContent.ObjId INNER JOIN"
strSQL = strSQL & " f_Content ON f_Rel_ObjContent.ContentId = f_Content.ContentId INNER JOIN"
strSQL = strSQL & " f_MetaElement ON f_Content.ElementId = f_MetaElement.ElementId"
strSQL = strSQL & " WHERE (f_Rel_ObjContent.ParentContentId IS NULL) AND (f_Rel_ObjContent.ObjId = " & ID & ")"
strSQL = strSQL & " ORDER BY f_Rel_ObjContent.Index_order"

'Hämtar gruppelement (barn)
strSQL1 = " SELECT f_Rel_ObjContent.ContentId as PCID, f_Rel_ObjContent.ParentContentId as GroupedParentId, "
strSQL1 = strSQL1 & " f_Rel_ObjContent.Index_order as GroupedIndexOrder, f_Rel_ObjContent.Duration as GroupedDuration, f_Content.TextString as GroupedTextString, f_Content.AltText as GroupedAltText, f_Content.Class as GroupedClass, f_Content.ObjId as GroupedObjId, f_Content.URL as GroupedURL, "
strSQL1 = strSQL1 & " f_Content.MaxWidth as GroupedMaxWidth, f_Content.MaxHeight as GroupedMaxHeight, f_Content.ImageCropName as GroupedImageCropname, f_MetaElement.Name AS GroupedMetaElementName, "
strSQL1 = strSQL1 & " f_MetaElement.Kategori AS GroupedMetaElementCategory, f_MetaElement.Type AS GroupedMetaElementType, f_MetaElement.ElementId AS GroupedMetaElementID"
strSQL1 = strSQL1 & " FROM f_Object INNER JOIN"
strSQL1 = strSQL1 & " f_Rel_ObjContent ON f_Object.ObjId = f_Rel_ObjContent.ObjId INNER JOIN"
strSQL1 = strSQL1 & " f_Content ON f_Rel_ObjContent.ContentId = f_Content.ContentId INNER JOIN"
strSQL1 = strSQL1 & " f_MetaElement ON f_Content.ElementId = f_MetaElement.ElementId"
strSQL1 = strSQL1 & " WHERE (f_Rel_ObjContent.ParentContentId IS NOT NULL) AND (f_Rel_ObjContent.ObjId = " & ID & ")"
strSQL1 = strSQL1 & " ORDER BY f_Rel_ObjContent.Index_order"

Dim conn As New SqlConnection(routines.GetConnectionString)
Dim adapter As New SqlDataAdapter
Dim adapter1 As New SqlDataAdapter
Dim ds As New DataSet("MIS")

Try
adapter.SelectCommand = New SqlCommand(strSQL, conn)
adapter.Fill(ds, "Parent")
adapter1.SelectCommand = New SqlCommand(strSQL1, conn)
adapter1.Fill(ds, "Child")
conn.Close()
conn = Nothing

Dim parentCol As DataColumn
Dim childCol As DataColumn

parentCol = ds.Tables(0).Columns(3)
childCol = ds.Tables(1).Columns(0)

Dim relElementGroup As DataRelation
relElementGroup = New DataRelation("ElementGroup", parentCol, childCol)
relElementGroup.Nested = True
ds.Relations.Add(relElementGroup)

Catch ex As SystemException
Throw New ApplicationException(Err.Description)
End Try

/Ulf


Svara

Sv: Samma SQL-tabell i två relaterade dataset-tabeller

Postades av 2006-05-29 11:39:33 - Johan Djupmarker

Meddelandet betyder att kolumnen som parentCol refererar till inte innehåller unika värden. Omöjligt att svara på varför utan att se vad du har för data i dina tabeller. Men eftersom ditt "förälder datatable" skapas från flera joinar kan man misstänka att du har dubletter i någon tabell som gör att det blir dubletter i resultatet. Testa att köra sql-frågan direkt mot databasen och kontrollera resultatet.

/Johan


Svara

Sv:Samma SQL-tabell i två relaterade dataset-tabeller

Postades av 2006-05-29 13:35:18 - Ulf Bodin

Tack! Inga dubletter men väl ett litet tankefel som fick sin lösning!

/Ulf


Svara

Nyligen

  • 14:24 CBD regelbundet?
  • 14:23 CBD regelbundet?
  • 14:22 Har du märkt några verkliga fördel
  • 09:09 Vill du köpa medicinska tester?
  • 12:47 Vem beviljar assistansen – kommune
  • 14:17 Någon med erfarenhet av hemstädnin
  • 14:14 Bör man använda sig av en båtförme
  • 14:12 Finns det någon intressant hundblo

Sidor

  • Hem
  • Bli bonusmedlem
  • Läs artiklar
  • Chatta med andra
  • Sök och erbjud jobb
  • Kontakta oss
  • Studentlicenser
  • Skriv en artikel

Statistik

Antal besökare:
Antal medlemmar:
Antal inlägg:
Online:
På chatten:
4 569 615
27 953
271 709
5 476
0

Kontakta oss

Frågor runt konsultation, rådgivning, uppdrag, rekrytering, annonsering och övriga ärenden. Ring: 0730-88 22 24 | pelle@pellesoft.se

© 1986-2013 PelleSoft AB. Last Build 4.1.7169.18070 (2019-08-18 10:02:21) 4.0.30319.42000
  • Om
  • Kontakta
  • Regler
  • Cookies