الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

مشكلة في data set

مغلق
بدأه King naif في 1 أغسطس 2005 · 8 رد · 796 مشاهدة · في ASP.NET
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

اخواني الاعزاء

عندما أضع استعلام في ال dataset يظهر لي هذا الخطأ

Failed to enable constraints. One or more rows contain values violating non-null, unique, or foreign-key constraints.

مع ان نفس هذا الاستعلام ينفذ ويعطي نتائج صحيحة في query analyzer

#2

ممكن الكود بعد إذنك

#3

اخي االعزيز karim_tarek

شكرا على اهتمامك الكود هو

Public Class Report1
    Inherits System.Web.UI.Page

#Region " Web Form Designer Generated Code "

    'This call is required by the Web Form Designer.
    <System.Diagnostics.DebuggerStepThrough()> Private Sub InitializeComponent()
        Me.SqlDataAdapter1 = New System.Data.SqlClient.SqlDataAdapter
        Me.SqlConnection1 = New System.Data.SqlClient.SqlConnection
        Me.SqlSelectCommand1 = New System.Data.SqlClient.SqlCommand
        Me.DataSet21 = New RAVL.DataSet2
        CType(Me.DataSet21, System.ComponentModel.ISupportInitialize).BeginInit()
        '
        'SqlDataAdapter1
        '
        Me.SqlDataAdapter1.SelectCommand = Me.SqlSelectCommand1
        Me.SqlDataAdapter1.TableMappings.AddRange(New System.Data.Common.DataTableMapping() {New System.Data.Common.DataTableMapping("Table", "Audio", New System.Data.Common.DataColumnMapping() {New System.Data.Common.DataColumnMapping("SerialNo", "SerialNo"), New System.Data.Common.DataColumnMapping("branch_name", "branch_name"), New System.Data.Common.DataColumnMapping("Production", "Production"), New System.Data.Common.DataColumnMapping("Speaker", "Speaker"), New System.Data.Common.DataColumnMapping("Title", "Title"), New System.Data.Common.DataColumnMapping("ForP", "ForP"), New System.Data.Common.DataColumnMapping("OrderByP", "OrderByP"), New System.Data.Common.DataColumnMapping("SPerson", "SPerson"), New System.Data.Common.DataColumnMapping("Qty", "Qty"), New System.Data.Common.DataColumnMapping("Amount", "Amount"), New System.Data.Common.DataColumnMapping("GorS", "GorS"), New System.Data.Common.DataColumnMapping("branch_id", "branch_id")})})
        '
        'SqlConnection1
        '
        Me.SqlConnection1.ConnectionString = "workstation id=NAIF;packet size=4096;user id=ravl;password=ravl;data source=NAIF;persist securi" & _
        "ty info=False;initial catalog=RAVL"
        '
        'SqlSelectCommand1
        '
        Me.SqlSelectCommand1.CommandText = "SELECT Audio.SerialNo, branch.branch_name, Audio.Production, Audio.Speaker, Audio" & _
        ".Title, AudioDetailesSub.ForP, AudioDetailesSub.OrderByP, AudioDetailesSub.SPers" & _
        "on, AudioDetailesSub.Qty, AudioDetailesSub.Amount, AudioDetailesSub.GorS, Audio." & _
        "branch_id FROM Audio INNER JOIN branch ON Audio.branch_id = branch.branch_id INN" & _
        "ER JOIN AudioDetailesSub ON Audio.SerialNo = AudioDetailesSub.SerialNo AND Audio" & _
        ".branch_id = AudioDetailesSub.branch_id"
        Me.SqlSelectCommand1.Connection = Me.SqlConnection1
        '
        'DataSet21
        '
        Me.DataSet21.DataSetName = "DataSet2"
        Me.DataSet21.Locale = New System.Globalization.CultureInfo("ar-SA")
        CType(Me.DataSet21, System.ComponentModel.ISupportInitialize).EndInit()

    End Sub
    Protected WithEvents DataGrid1 As System.Web.UI.WebControls.DataGrid
    Protected WithEvents SqlDataAdapter1 As System.Data.SqlClient.SqlDataAdapter
    Protected WithEvents SqlConnection1 As System.Data.SqlClient.SqlConnection
    Protected WithEvents SqlSelectCommand1 As System.Data.SqlClient.SqlCommand
    Protected WithEvents DataSet21 As RAVL.DataSet2
    Protected WithEvents l1 As System.Web.UI.WebControls.Label

    'NOTE: The following placeholder declaration is required by the Web Form Designer.
    'Do not delete or move it.
    Private designerPlaceholderDeclaration As System.Object

    Private Sub Page_Init(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Init
        'CODEGEN: This method call is required by the Web Form Designer
        'Do not modify it using the code editor.
        InitializeComponent()
    End Sub

#End Region

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        'Put user code to initialize the page here
        DataSet21.Clear()
        DataGrid1.EnableViewState = True
        SqlSelectCommand1.CommandText = Request.QueryString("qry")'qry is a query comes from another page 
        SqlDataAdapter1.Fill(DataSet21)
        If DataSet21.Tables(0).Rows.Count = 0 Then
            DataGrid1.Visible = False
            l1.Visible = True
        Else
            DataGrid1.DataBind()
            l1.Visible = False
        End If
    End Sub

End Class
#4

اخي ربما هنا الخطأ

مع انه ليس خطأ ولكنها مشكلة دت نت

Audio.branch_id = branch.branch_id

1- تأكد من هذين الحقلين فيجب ان تكون كل سجلات branch.branch_id موجودة في Audio.branch_id

2- اضف سطر جديد واحد الى Audio واجعل له تفصيل واحد على الاقل في branch

والعلم عند الله

#5

جرب أن تضيف السطر التالي في Page_Load

DataSet21.EnforceConstraints = False

تم تعديل هذه المشاركة بواسطة Abo Waleed في 2 أغسطس 2005 في 08:17

#6

اخواني Abo Waleed ,karim_tarek ,blackeyes

شكرا لكم

المشكلة انحلت ولله الحمد

#7

طيب يا أخي كنا نود أن نعرف أين كانت المشكلة, إذا كنت لاتمانع

#8

أخي العزيز karim_tarek متأسف جدا كون الرد كان سريعا وبدون تفاصيل

عندي ثلاثة جداول ( branch,audio,AudioDetailesSub )

ال primary key في جدول audio هما serialno,branch_id

وال primary key في جدول branch هو branch_id

في جدول AudioDetailesSub موجود عندي serialno,branch_id ولكن الجدول لايوجد به primary key

والعلاقة (1-M) بين audio,AudioDetailesSub

وكانت قيم serialno,branch_id تتكر في جدول AudioDetailesSub (وهنا المشكلة مع انها لاتوجد مشكلة)

الحل:

قمت بإلغاء ال primary key في جدول Audio

وتحكمت ب ال primary key في جدول audio عن طريق ال coding

ومشت الامور على مايرام

وأكرر أسفي على عدم التوضيح

ولكم مني جزيل الشكر,,,,,,

#9

يا أخي و الله لاداعي للأسف و لكن مشاركتك لنا الحل من باب الفائدة لنا جميعا, و مشكور على سرعة تجاوبك و كرمك في التفاعل

هذا الموضوع مغلق.

مواضيع مشابهة