powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / 1 датасет 2 адаптера
8 сообщений из 8, страница 1 из 1
1 датасет 2 адаптера
    #34540047
mr.vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Добросовестно обрыл форум но толком не нашел ничего.


У меня есть датасет, заполненный таблицами. Одна из них заполняет форму, вторая датагридвиев. Для того чтоб добавлять, удалать и обновлять записи мне нужно два датаадаптера, но я не пойму как их привязать к одному датасету.

Хотел привязать к разным, но оказываеться между разными датасетами нельзя сделать Relation :( (по крайней мере мне выдавало ошибку)


С ув. Виталий
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34540057
Думающий
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может я чего путаю, но помоему вам нужно создать в датасетет 2 DataTable и 2 TableAdapter к таблицам и использовать их.
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34540274
Фотография buser
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Отпустите мышь, возьмите книгу... и всё получится...
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34541023
mr.vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вроде получилось и работает. Но вот чтото мне подсказывает что слишком все сложно

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
52.
53.
54.
55.
56.
57.
58.
59.
60.
61.
62.
63.
64.
65.
66.
67.
68.
69.
70.
71.
72.
73.
74.
75.
76.
77.
78.
79.
80.
81.
82.
83.
        Dim trans As System.Data.SqlClient.SqlTransaction = gconAppConnection.BeginTransaction()
        Try
            da1 = New SqlClient.SqlDataAdapter
            Me.da1.InsertCommand = New System.Data.SqlClient.SqlCommand
            Me.da1.InsertCommand.Connection = gconAppConnection
            Me.da1.InsertCommand.CommandText = "udp_GoodsInsert"
            Me.da1.InsertCommand.CommandType = CommandType.StoredProcedure
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Id", SqlDbType.Int,  8 , ParameterDirection.Output,  0 ,  0 , "Goods_Id", System.Data.DataRowVersion.Current, False, intGoodsId, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Name", SqlDbType.NVarChar,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Name", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_ShortName", SqlDbType.NVarChar,  14 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_ShortName", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_ChequeName", SqlDbType.NVarChar,  15 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_ChequeName", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Tax", SqlDbType.Float,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Tax", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_TaxImport", SqlDbType.Float,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_TaxImport", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CostOfGiving", SqlDbType.Money,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CostOfGiving", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CostOfReceiving", SqlDbType.Money,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CostOfReceiving", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CashCode", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CashCode", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_NetMass", SqlDbType.NVarChar,  10 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_NetMass", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_GrossMass", SqlDbType.NVarChar,  10 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_GrossMass", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@GoodsType_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "GoodsType_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_ID", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Unit_ID", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@GoodsGroup_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Unit_ID", System.Data.DataRowVersion.Current, False, intGroupKey, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Bottle_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Bottle_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Customer_Id_Deliver", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Customer_Id_Deliver", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Customer_Id_Manufacturer", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Customer_Id_Manufacturer", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Notes", SqlDbType.NVarChar,  255 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Notes", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))

            Me.da1.UpdateCommand = New System.Data.SqlClient.SqlCommand
            Me.da1.UpdateCommand.Connection = gconAppConnection
            Me.da1.UpdateCommand.CommandText = "udp_GoodsUpdate"
            Me.da1.UpdateCommand.CommandType = CommandType.StoredProcedure
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Id", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Goods_Id", System.Data.DataRowVersion.Current, False, intGoodsId, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Name", SqlDbType.NVarChar,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Name", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_ShortName", SqlDbType.NVarChar,  14 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_ShortName", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_ChequeName", SqlDbType.NVarChar,  15 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_ChequeName", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Tax", SqlDbType.Float,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Tax", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_TaxImport", SqlDbType.Float,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_TaxImport", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CostOfGiving", SqlDbType.Money,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CostOfGiving", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CostOfReceiving", SqlDbType.Money,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CostOfReceiving", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_CashCode", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_CashCode", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_NetMass", SqlDbType.NVarChar,  10 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_NetMass", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_GrossMass", SqlDbType.NVarChar,  10 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_GrossMass", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@GoodsType_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "GoodsType_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_ID", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Unit_ID", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@GoodsGroup_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Unit_ID", System.Data.DataRowVersion.Current, False, intGroupKey, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Bottle_Id", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Bottle_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Customer_Id_Deliver", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Customer_Id_Deliver", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Customer_Id_Manufacturer", SqlDbType.Int,  30 , System.Data.ParameterDirection.Input,  0 ,  0 , "Customer_Id_Manufacturer", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Notes", SqlDbType.NVarChar,  255 , System.Data.ParameterDirection.Input,  0 ,  0 , "Goods_Notes", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))

            Me.Validate()
            Me.bs1.EndEdit()
            Me.da1.Update(Me.ds1.Tables( 0 ))
            Me.TextBox_GoodName.Tag = intGoodsId.ToString

            da1 = New SqlClient.SqlDataAdapter
            Me.da1.InsertCommand = New System.Data.SqlClient.SqlCommand
            Me.da1.InsertCommand.Connection = gconAppConnection
            Me.da1.InsertCommand.CommandText = "udp_GoodsUnitsInsert"
            Me.da1.InsertCommand.CommandType = CommandType.StoredProcedure
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@GoodsUnit_Id", SqlDbType.Int,  8 , ParameterDirection.Output,  0 ,  0 , "GoodsUnit_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Id", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Goods_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_From", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_From", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_From_Value", SqlDbType.Float,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_From_Value", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_To", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_To", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.InsertCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_To_Value", SqlDbType.Float,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_To_Value", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))

            Me.da1.UpdateCommand = New System.Data.SqlClient.SqlCommand
            Me.da1.UpdateCommand.Connection = gconAppConnection
            Me.da1.UpdateCommand.CommandText = "udp_GoodsUnitsUpdate"
            Me.da1.UpdateCommand.CommandType = CommandType.StoredProcedure
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Goods_Id", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Goods_Id", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_From", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_From", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_From_Value", SqlDbType.Float,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_From_Value", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_To", SqlDbType.Int,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_To", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))
            Me.da1.UpdateCommand.Parameters.Add(New System.Data.SqlClient.SqlParameter("@Unit_Id_To_Value", SqlDbType.Float,  8 , ParameterDirection.Input,  0 ,  0 , "Unit_Id_To_Value", System.Data.DataRowVersion.Current, False, Nothing, "", "", ""))

            Me.Validate()
            Me.bs7.EndEdit()
            Me.da1.Update(Me.ds1.Tables( 6 ))
            trans.Commit()
        Catch
            trans.Rollback()
            MessageBox.Show(Err.Description)
        End Try
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34541106
Stegazifals
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ничего не сложно, привыкнешь
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34542335
mr.vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пипец, дома все работало, на работе пишет

Update requires a valid UpdateCommand when passed DataRow collection with modified rows.
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34542340
mr.vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
ALTER PROCEDURE [dbo].[udp_GoodsUpdate]
(
@Goods_Id  int,
@Goods_Name  nvarchar( 30 ),
@Goods_ShortName  nvarchar( 14 ),
@Goods_ChequeName  nvarchar( 15 ),
@Goods_Tax  float,
@Goods_TaxImport  float,
@Goods_CostOfGiving  money,
@Goods_CostOfReceiving  money,
@Goods_CashCode  int,
@Goods_NetMass  nchar( 10 ),
@Goods_GrossMass  nchar( 10 ),
@GoodsType_Id  int,
@GoodsGroup_Id  int,
@Unit_ID  int,
@Bottle_Id  int,
@Customer_Id_Deliver  int,
@Customer_Id_Manufacturer  int,
@Goods_Notes  nvarchar(max)
)
AS
BEGIN
UPDATE    table_Goods
SET              Goods_Name = @Goods_Name, Goods_ShortName = @Goods_ShortName, Goods_ChequeName = @Goods_ChequeName, 
                      Goods_Tax = @Goods_Tax, Goods_TaxImport = @Goods_TaxImport, Goods_CostOfGiving = @Goods_CostOfGiving, 
                      Goods_CostOfReceiving = @Goods_CostOfReceiving, Goods_CashCode = @Goods_CashCode, Goods_NetMass = @Goods_NetMass, 
                      Goods_GrossMass = @Goods_GrossMass, GoodsType_Id = @GoodsType_Id, GoodsGroup_Id = @GoodsGroup_Id, Unit_ID = @Unit_ID, 
                      Bottle_Id = @Bottle_Id, Customer_Id_Deliver = @Customer_Id_Deliver, Customer_Id_Manufacturer = @Customer_Id_Manufacturer, 
                      Goods_Notes = @Goods_Notes
WHERE     (Goods_Id = @Goods_Id)
END



Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
ALTER PROCEDURE [dbo].[udp_GoodsUnitsUpdate]
(
 @Goods_Id  int
,@Unit_ID_From  int
,@Unit_ID_From_Value  float
,@Unit_ID_To  int
,@Unit_ID_To_Value int
)
AS
BEGIN
UPDATE    table_GoodsUnits
SET              Unit_ID_From = @Unit_ID_From, Unit_ID_From_Value = @Unit_ID_From_Value, Unit_ID_To = @Unit_ID_To, 
                      Unit_ID_To_Value = @Unit_ID_To_Value
WHERE Goods_Id = @Goods_Id
END
...
Рейтинг: 0 / 0
1 датасет 2 адаптера
    #34542399
mr.vetal
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
вопрос снят

налепил лишние
Код: plaintext
Me.da1.Update(Me.ds1.Tables( 0 ))

.NET конечно очень глубокая штука, но намудрили они ппц
...
Рейтинг: 0 / 0
8 сообщений из 8, страница 1 из 1
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / 1 датасет 2 адаптера
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]