powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / DataSet и SQL Server
25 сообщений из 54, страница 1 из 3
DataSet и SQL Server
    #38044555
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Как лучше всего записывать данные из DataTable в sql-ю базу

Есть база например Excel
таблица dbo.Excel - поля id, name1, name2

Хранимая процедура

ALTER PROCEDURE InsertExcel
@name1 nvarchar(50),
@name2 nvarchar(50)
AS
BEGIN
INSERT INTO dbo.Excel ([name1], [name2]) VALUES (@name1, @name2)
DECLARE @id int
SET @id = scope_identity()
END

В программе я считываю данные из Excel анализирую и питаюсь записать их в базу

DataSet excelDataSet = new DataSet();

//загрузка из excel в DataSet(DataTable) и прочее

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
using (SqlConnection sqlConn = new SqlConnection(conn))
{
String store = "InsertExcel";

SqlCommand cmd = new SqlCommand(store, sqlConn);
cmd.CommandType = CommandType.StoredProcedure;
sqlConn.Open();


//А вот здесь я хотел пройтись циклом и записать данные в базу
foreach (DataRow row in excelDataSet.Tables[0].Rows)
                {
                    cmd.Parameters.Add("@name1", row[0].ToString());
                    cmd.Parameters.Add("@name2", row[1].ToString());

                    SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
                    SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

                    cmd.ExecuteNonQuery();
                }
                
                sqlConn.Close();
}



но мне выпадает ошибка см. скрин

Может это и глупо но как из DataSet(DataTable) можна записывать данные в базу?

Спасибо.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38044603
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VIT2708Как лучше всего записывать данные из DataTable в sql-ю базу
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
using (SqlConnection sqlConn = new SqlConnection(conn))
{
String store = "InsertExcel";

SqlCommand cmd = new SqlCommand(store, sqlConn);
cmd.CommandType = CommandType.StoredProcedure;
sqlConn.Open();


//А вот здесь я хотел пройтись циклом и записать данные в базу
foreach (DataRow row in excelDataSet.Tables[0].Rows)
                {
                    cmd.Parameters.Add("@name1", row[0].ToString());
                    cmd.Parameters.Add("@name2", row[1].ToString());

                    SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
                    SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

                    cmd.ExecuteNonQuery();
                }
                
                sqlConn.Close();
}



но мне выпадает ошибка см. скрин

Может это и глупо но как из DataSet(DataTable) можна записывать данные в базу?

Спасибо.Потому и выпадает, что Вы в каждой итерации добавляете в коллекцию параметров cmd по два (новых) параметра - а их должно быть всего два...
Перепишите, например, как-то вот так:
Код: c#
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.
using (SqlConnection sqlConn = new SqlConnection(conn))
{
   String store = "InsertExcel";

   SqlCommand cmd = new SqlCommand(store, sqlConn);
   cmd.CommandType = CommandType.StoredProcedure;
   sqlConn.Open();

   SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
   SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

   foreach (DataRow row in excelDataSet.Tables[0].Rows)
   {
      if (row[0] == null)
            name1.Value = DBNull.Value;
      else
            name1.Value = row[0];
   
      if (row[1] == null)
            name2.Value = DBNull.Value;}
      else
            name2.Value = row[1];

      cmd.ExecuteNonQuery();
   }
}
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38044686
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VIT2708Как лучше всего записывать данные из DataTable в sql-ю базу
SqlBulkCopy и только SqlBulkCopy.

P.S. Код от sphinx_mv можешь выкинуть на свалку.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045340
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ,

Посоветуйте лучше
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045351
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mv,

Поэкспериментировал и сделал там оказалось все намного проще

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
using (SqlConnection sqlConn = new SqlConnection(conn))
{
String store = "InsertExcel";

sqlConn.Open();

foreach (DataRow row in excelDataSet.Tables[0].Rows)
                {
SqlCommand cmd = new SqlCommand(store, sqlConn);
cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add("@name1", row[0].ToString());
                    cmd.Parameters.Add("@name2", row[1].ToString());

                    SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
                    SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

                    cmd.ExecuteNonQuery();
                }
                
                sqlConn.Close();
}



А вот если сделать так то все работает
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045643
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VIT2708sphinx_mv,

Поэкспериментировал и сделал там оказалось все намного проще

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
using (SqlConnection sqlConn = new SqlConnection(conn))
{
String store = "InsertExcel";

sqlConn.Open();

foreach (DataRow row in excelDataSet.Tables[0].Rows)
                {
SqlCommand cmd = new SqlCommand(store, sqlConn);
cmd.CommandType = CommandType.StoredProcedure;

                    cmd.Parameters.Add("@name1", row[0].ToString());
                    cmd.Parameters.Add("@name2", row[1].ToString());

                    SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
                    SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

                    cmd.ExecuteNonQuery();
                }
                
                sqlConn.Close();
}



А вот если сделать так то все работаетРаботает - уже хорошо. :)
И только теперь можно (и даже нужно) заняться "улучшизмом"...

Обратите внимание: у Вас создается по одному экземпляру SqlCommand (с набором параметров) на каждую итерацию...
На больших объемах данных (если такой подход к кодированию сохранится) может вызвать определенныее проблемы. На "мелочах" (и поначалу) выделение памяти и инициализация объектов и последующее освобождение выделенных под них ресурсов не очень заметны, но с ростом объемов обрабатываемых данных затраты на эти операции многократно (и нелинейно) возрастают...

И еще... Ни сами переменные параметров name1 и name2, ни их инициализация в Вашем примере в-общем-то не нужны - эти две строки в Вашем примере можно безболезненно убрать.

P.S. А у меня была ошибка: name1 и name2 не добавлялись в коллекцию параметров cmd.
Нужно было использовать sql.Parameters.Add(name1) и тоже самое для name2 сразу после их инициализации - и тоже бы работало... :)
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045655
VIT2708
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mv,

Так данных то в этих файлах что даются немного.

По поводу улучшений попробую ваш код ну может еще чего то накопаю

Спасибо.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045657
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvНужно было использовать sql.Parameters.Add(name1) и тоже самое для name2 сразу после их инициализации - и тоже бы работало... :)
Садись, двойка. RTFM

...Перегруженной версией метода Add, принимающая строку и объект пренебрегали из-за возможного конфликта с перегруженной версией SqlParameterCollection.Add, принимающей String и значение из перечисления SqlDbType, поскольку передача целого значения в строке может интерпретироваться как значение параметра или соответствующее значение SqlDbType. Используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение.

Даже дети про это знают.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045700
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУsphinx_mvНужно было использовать sql.Parameters.Add(name1) и тоже самое для name2 сразу после их инициализации - и тоже бы работало... :)
Садись, двойка. RTFM

...Перегруженной версией метода Add, принимающая строку и объект пренебрегали из-за возможного конфликта с перегруженной версией SqlParameterCollection.Add, принимающей String и значение из перечисления SqlDbType, поскольку передача целого значения в строке может интерпретироваться как значение параметра или соответствующее значение SqlDbType. Используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение.

Даже дети про это знают.
Дети даже НЕ ЗНАЮТ всех перегруженных методов (в частности, SqlParameterCollection.Add(SqlParameter)) - и ОЧЕНЬ зря...
Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
   SqlCommand cmd = new SqlCommand(store, sqlConn);
   cmd.CommandType = CommandType.StoredProcedure;

   SqlParameter name1 = new SqlParameter("@name1", SqlDbType.NVarChar, 50);
   SqlParameter name2 = new SqlParameter("@name2", SqlDbType.NVarChar, 50);

   #region Это я ошибочно пропустил в исходном варианте
   cmd.Parameters.Add(name1);
   cmd.Parameters.Add(name2);
   #endregion Это я ошибочно пропустил в исходном варианте

   foreach (DataRow row in excelDataSet.Tables[0].Rows)
      {
      // далее - по тексту...
      }


Ну, и какие "конфликты", про которые пишется в RTFMе?
То есть, проблема, конечно, МОЖЕТ иметь место - но НЕ в ЭТОМ конкретном случае...
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045723
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
VIT2708sphinx_mv,
Так данных то в этих файлах что даются немного.
Ну, так и выделенные ресурсы освобождаются не сразу...
Вполне может сложиться ситуация, когда Ваш код полностью отработал 10-100-1000 раз, а ресурсы, внутри него выделенные, еще ни разу не освободились...
А потом в некий момент времени "Ч" сборщик мусора "дорывается до халявы" (т.е., "свободного" процессора) и начинает все это "фиксить"...
VIT2708Спасибо.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38045734
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvДети даже НЕ ЗНАЮТ всех перегруженных методов (в частности, SqlParameterCollection.Add(SqlParameter)) - и ОЧЕНЬ зря...
У детей рассеянное внимание, они не могут сосредоточиться на главном - рекомендация от MS "Используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение."
Мало?

sphinx_mvНу, и какие "конфликты", про которые пишется в RTFMе?
Если ты до сих пор не понял, о чем речь в документации - иди займи у коллег мозги, а потом садись писать код.

sphinx_mvТо есть, проблема, конечно, МОЖЕТ иметь место - но НЕ в ЭТОМ конкретном случае...
Есть рекомендации, как правильно писать - это самое главное. Писать гавнокод (даже если он на первый взгляд и работает) или писать правильный код - твои личные проблемы. Просто за отсутствием маломальски какого-то ни было опыта ты используешь гумно, нагугленное с пионерских форумов. Учись, бобёр.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38046256
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУsphinx_mvДети даже НЕ ЗНАЮТ всех перегруженных методов (в частности, SqlParameterCollection.Add(SqlParameter)) - и ОЧЕНЬ зря...
У детей рассеянное внимание, они не могут сосредоточиться на главном - рекомендация от MS "Используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение."
Мало?
Айдане3.14зди!
Мне НЕ нужно - т.е. ВООБЩЕ - даже пытаться "добавлять параметр в колекцию параметров вместе со значением" . Мне нужно - и я именно это сделал! - в цикле присвоить значение давным-давно добавленному в коллекцию отдельно проинициализированному параметру! И ВСЕ!
Соответственно, метод коллекции параметров AddWithValue к этому НИКАКОГО отношения к ненаписанной Вами ни единой правильной строке кода отношения не имеет - то есть СОВСЕМ!
Если Вы не видите разницы между этими СОВЕРШЕННО РАЗНЫМИ способами использования параметров в запросах, обращайтесь к несколько более другому специалисту: я такое не лечу - и Вам об этом УЖЕ было неоднократно сказано.
МСУsphinx_mvНу, и какие "конфликты", про которые пишется в RTFMе?
Если ты до сих пор не понял, о чем речь в документации - иди займи у коллег мозги, а потом садись писать код.
Были бы у Вас самого были мозги, Вы бы ПОНЯЛИ, что НА САМОМ ДЕЛЕ написано в процитированом Вами отрывке RTFMа...
И я давно понял: ВАШИ коллеги с Вами делиться мозгами не хотят - другого объяснения отсутствию Вашего "правильно написаного" (по всем "стандартам" и "рекомендациям") работающего варианта решения просто не существует...
МСУsphinx_mvТо есть, проблема, конечно, МОЖЕТ иметь место - но НЕ в ЭТОМ конкретном случае...
Есть рекомендации, как правильно писать - это самое главное.
Рекомендации надо применять В ТОМ МЕСТЕ, К КОТОРОМУ ЭТИ РЕКОМЕНДАЦИИ ОТНОСЯТСЯ!
И рекомендации на то и РЕКОМЕНДАЦИИ, что они РЕКОМЕНДУЮТСЯ, но НЕ обязательны к применению - уж не-говнокодеры об этом должны были бы хотя бы подозревать! Фанатично использовать рекомендации как обязаловку к месту и не к месту - вот это и есть САМЫЙ НАСТОЯЩИЙ ГОВНОКОД!
Вы ТАК пишете?! Тогда Вы ЗНАЕТЕ, как назвать ВАШ "код"?!
МСУ
Писать гавнокод (даже если он на первый взгляд и работает) или писать правильный код - твои личные проблемы. Просто за отсутствием маломальски какого-то ни было опыта ты используешь гумно, нагугленное с пионерских форумов. Учись, бобёр.А самому прекратить дрочить на монитор и показать правильный не-говнокод слабо - вот как раз с теми самыми AddWithValue? Или - еще лучше - SqlBulkCopy? (запасаюсь попкорном и пивом)
Вот такие у нас "гуру": сами ни строки кода (даже не рабочего) не написали, зато у других (полностью функциональный) не код, а говно...
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38046386
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvАйдане3.14зди!
Мне НЕ нужно - т.е. ВООБЩЕ - даже пытаться "добавлять параметр в колекцию параметров вместе со значением" . Мне нужно - и я именно это сделал! - в цикле присвоить значение давным-давно добавленному в коллекцию отдельно проинициализированному параметру! И ВСЕ!
Если нужна переинициализация значением, есть SqlParameterCollection.Clear . Кухарка не знает о этом чудном методе?

sphinx_mvСоответственно, метод коллекции параметров AddWithValue к этому НИКАКОГО отношения к ненаписанной Вами ни единой правильной строке кода отношения не имеет - то есть СОВСЕМ!
AddWithValue не имеет никакого отношения ровно в точности, в которой не имеешь отношения к программированию твой мозг.

sphinx_mvЕсли Вы не видите разницы между этими СОВЕРШЕННО РАЗНЫМИ способами использования параметров в запросах, обращайтесь к несколько более другому специалисту: я такое не лечу - и Вам об этом УЖЕ было неоднократно сказано.
Если ты так и не понял, что AddWithValue - это бест практис, слелай себе трепанацию черепной коробки.

sphinx_mvБыли бы у Вас самого были мозги, Вы бы ПОНЯЛИ, что НА САМОМ ДЕЛЕ написано в процитированом Вами отрывке RTFMа...
И я давно понял: ВАШИ коллеги с Вами делиться мозгами не хотят - другого объяснения отсутствию Вашего "правильно написаного" (по всем "стандартам" и "рекомендациям") работающего варианта решения просто не существует...
Вся проблема заключается не в том, что кто-то с тобой хочет чем-то делиться, а в том, что тебе уже поздно воспринимать что-то новое. Про рекомендации и стандарты я как-бы умалчиваю даже, ты не в состоянии не то что что-то делать, а даже просто думать.

sphinx_mvРекомендации надо применять В ТОМ МЕСТЕ, К КОТОРОМУ ЭТИ РЕКОМЕНДАЦИИ ОТНОСЯТСЯ!
Ну так применяй. Или не знаешь как это применять?

sphinx_mvИ рекомендации на то и РЕКОМЕНДАЦИИ, что они РЕКОМЕНДУЮТСЯ, но НЕ обязательны к применению - уж не-говнокодеры об этом должны были бы хотя бы подозревать! Фанатично использовать рекомендации как обязаловку к месту и не к месту - вот это и есть САМЫЙ НАСТОЯЩИЙ ГОВНОКОД!
Вы ТАК пишете?! Тогда Вы ЗНАЕТЕ, как назвать ВАШ "код"?!
Рекомендации на то и рекомендации, что им нужно следовать, а не тупо быдлокодить, как это делаешь ты. Твоей феерический гавнокод не знает границ, это не удивительно.

sphinx_mvА самому прекратить дрочить на монитор и показать правильный не-говнокод слабо - вот как раз с теми самыми AddWithValue?
Ты меня и монитор с кем-то спутал, не уж-то со своим отражением в зеркале? Бери правую руку и начинай писать правильный код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
using (var ctx = new DalDataContext())
{
    foreach (var item in collection)
    {
        ctx.InsertExcel(item.name1, item.name2); 
    }    
}



ЗЫ: SqlParameter оставь для таких как ты домохозяек, которым не под силу освоить ORM или балк копи.

sphinx_mvИли - еще лучше - SqlBulkCopy? (запасаюсь попкорном и пивом)
Лучше запасись валерьянкой и ножницами для трепанации черпной коробки, тебе эти вещи нужнее будут.
Зачем тебе от меня пример, или уже мозги высохли, чтобы тупо открыть справку и прочитать о этом классе?
http://msdn.microsoft.com/ru-ru/library/system.data.sqlclient.sqlbulkcopy.aspx

sphinx_mvВот такие у нас "гуру": сами ни строки кода (даже не рабочего) не написали, зато у других (полностью функциональный) не код, а говно...
Вот такие у нас "ламеры": сами тонны кода написал (нагугленного, с пионерских форумов) и гордо ходят и надувают пузыри из носа. Бугага.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38046396
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУЕсли нужна переинициализация значением, есть SqlParameterCollection.Clear . Кухарка не знает о этом чудном методе?
Во-вторых, AddWithValue ретурнит новый созданный SplParameter. Можно только один раз для первого значения из цикла выполнить AddWithValue, а для остальных использовать готовый параметр (чтобы не клерить через Clear, если лениво писать строчку кода).
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38047596
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУsphinx_mvАйдане3.14зди!
Мне НЕ нужно - т.е. ВООБЩЕ - даже пытаться "добавлять параметр в колекцию параметров вместе со значением" . Мне нужно - и я именно это сделал! - в цикле присвоить значение давным-давно добавленному в коллекцию отдельно проинициализированному параметру! И ВСЕ!
Если нужна переинициализация значением, есть SqlParameterCollection.Clear . Кухарка не знает о этом чудном методе?
Еще раз для особо "продвинутых": у меня УЖЕ ЕСТЬ экземпляр параметра с нужными основными атрибутами: имя, тип данных, размерность - это по самому скромному минимуму...
И мне СОВЕРШЕННО не только НЕ нужен, но во многих случаях его еще и физически НЕВОЗМОЖНО использовать, метод AddWithValue, и, тем более - метод Clear, ибо их сочетание в цикле внутри кода от "суперского гуру" - пример редкостного говнокода, который простителен ТОЛЬКО для начинающих программистов-студентов на лабораторках по программированию.
МСУsphinx_mvСоответственно, метод коллекции параметров AddWithValue к этому НИКАКОГО отношения к ненаписанной Вами ни единой правильной строке кода отношения не имеет - то есть СОВСЕМ!
AddWithValue не имеет никакого отношения ровно в точности, в которой не имеешь отношения к программированию твой мозг.
Тут главное, чтобы Вам не вынесло мозги Вашим говнокодом.
Десятки/сотни/тысячи раз в цикле выполнять инициализацию экземпляра (не считая необходимости настроить дополнительные атрибуты экземпляра), для который совершенно безболезненным образом можно неоднократно присваивать новое значение Value - это не просто круто... ЭТО - ОЧЕНЬ КРУТО!!!
МСУsphinx_mvЕсли Вы не видите разницы между этими СОВЕРШЕННО РАЗНЫМИ способами использования параметров в запросах, обращайтесь к несколько более другому специалисту: я такое не лечу - и Вам об этом УЖЕ было неоднократно сказано.
Если ты так и не понял, что AddWithValue - это бест практис, слелай себе трепанацию черепной коробки.
А!!! Так Вам УЖЕ сделали трепананацию?! 8()
Может и про лоботомию не забыли?
МСУsphinx_mvБыли бы у Вас самого были мозги, Вы бы ПОНЯЛИ, что НА САМОМ ДЕЛЕ написано в процитированом Вами отрывке RTFMа...
И я давно понял: ВАШИ коллеги с Вами делиться мозгами не хотят - другого объяснения отсутствию Вашего "правильно написаного" (по всем "стандартам" и "рекомендациям") работающего варианта решения просто не существует...
Вся проблема заключается не в том, что кто-то с тобой хочет чем-то делиться, а в том, что тебе уже поздно воспринимать что-то новое. Про рекомендации и стандарты я как-бы умалчиваю даже, ты не в состоянии не то что что-то делать, а даже просто думать.
Ну, с Вашими познаниями стандартов Вам еще леучиться и ле учиться...
То Вы с основами объектно -ориентированного программирования убились об стену...
То для Вас дословное майкрософтовское определение термина "code-behind" стало означать что-то более другое, чем разделение кода и верстки в ASP.NET...
То для Вас рекомендация относительно ОЧЕНЬ ЧАСТНОГО случая использования одного конкретного, отдельно взятого наследника DbParameterCollection , который вызывает когнитивный дисонанс мсу-образных говнокодеров, внезапно становятся "бэст практис"...
МСУsphinx_mvРекомендации надо применять В ТОМ МЕСТЕ, К КОТОРОМУ ЭТИ РЕКОМЕНДАЦИИ ОТНОСЯТСЯ!
Ну так применяй. Или не знаешь как это применять?
Вот и применяйте! Если не знаете не только основ ADO.NET, но и функционала базовых класов в .NET...
А я НЕ хочу, НЕ должен, НЕ обязан и НЕ буду использовать Вашу говнокодерскую "бэст практис" в своих разработках - к счастью, Ваш бред к моей нынешней платформе разработки даже и НЕ применим: эквивалентная коллекция параметров просто "положила" на Ваш когнитивно-диссонансный "супер-AddWithValue".
МСУsphinx_mvИ рекомендации на то и РЕКОМЕНДАЦИИ, что они РЕКОМЕНДУЮТСЯ, но НЕ обязательны к применению - уж не-говнокодеры об этом должны были бы хотя бы подозревать! Фанатично использовать рекомендации как обязаловку к месту и не к месту - вот это и есть САМЫЙ НАСТОЯЩИЙ ГОВНОКОД!
Вы ТАК пишете?! Тогда Вы ЗНАЕТЕ, как назвать ВАШ "код"?!
Рекомендации на то и рекомендации, что им нужно следовать, а не тупо быдлокодить, как это делаешь ты. Твоей феерический гавнокод не знает границ, это не удивительно.
Бла-бла-бла...
Говнокодеры, естественно НЕ знают, что DbParamaterCollection, от которого наследуются все XXXParameterCollection, НЕ содержит метода AddWithValue - во такая "бэст практис"... Соответственно, даже Мелкомягкие считают вполне вменяемым решением необязательность реализации этого метода по усмотрению разработчиков соотвествующих библиотек классов. Были бы у Вас мозги, это, может быть, заставило бы Вас задуматься, с чего бы это вдруг...
МСУsphinx_mvА самому прекратить дрочить на монитор и показать правильный не-говнокод слабо - вот как раз с теми самыми AddWithValue?
Ты меня и монитор с кем-то спутал, не уж-то со своим отражением в зеркале? Бери правую руку и начинай писать правильный код:
Код: c#
1.
2.
3.
4.
5.
6.
7.
using (var ctx = new DalDataContext())
{
    foreach (var item in collection)
    {
        ctx.InsertExcel(item.name1, item.name2); 
    }    
}


Говнокод! Начиная с того, что он НЕ РАБОЧИЙ - то есть, ВООБЩЕ: не приведено еще ...дцать экранов Вашего (дополнительного) говнокодирования, чтобы это хотя бы можно было попытаться откомпилировалось...
И заканчивая тем, что ни AddWithValue, ни SqlBulkCopy, которые были указаны в исходных условиях, нигде не используются..
Соответственно, Вы всегда можете получить Вашу медаль говнокодера по первому Вашему требованию...
МСУЗЫ: SqlParameter оставь для таких как ты домохозяек, которым не под силу освоить ORM или балк копи.
BulkCopy - даже для Вас это вызвало немеряные затруднения.
МСУsphinx_mvИли - еще лучше - SqlBulkCopy? (запасаюсь попкорном и пивом)
Лучше запасись валерьянкой и ножницами для трепанации черпной коробки, тебе эти вещи нужнее будут.
Зачем тебе от меня пример, или уже мозги высохли, чтобы тупо открыть справку и прочитать о этом классе?
http://msdn.microsoft.com/ru-ru/library/system.data.sqlclient.sqlbulkcopy.aspx
МСУНЕ КАНАЕТ: ПРИМЕР КОДА - В СТУДИЮ!!!
МАКСИМАЛЬНО ПОЛНЫЙ ПРИМЕР!
Строку подключения к БД и заполнение DataTable исходными данными из файла Excel разрешаю пропустить...
Если ВЫ не можете САМОСТОЯТЕЛЬНО показать вменяемый пример кода (ну, хотя бы копи-пастом), ВЫ - ЛАМЕР и ЛОХ! Очень, надеюсь, лохи и ламеры не обидятся за эти сравнения...
Ну, а про говнокодера, вроде бы, уже было сказано...

sphinx_mvВот такие у нас "гуру": сами ни строки кода (даже не рабочего) не написали, зато у других (полностью функциональный) не код, а говно...
Вот такие у нас "ламеры": сами тонны кода написал (нагугленного, с пионерских форумов) и гордо ходят и надувают пузыри из носа. Бугага.Бла-бла-бла...
Если Вы обосрались, для начала хотя бы подмойтесь - воняет...
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38047597
sphinx_mv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУМСУЕсли нужна переинициализация значением, есть SqlParameterCollection.Clear . Кухарка не знает о этом чудном методе?
Во-вторых, AddWithValue ретурнит новый созданный SplParameter. Можно только один раз для первого значения из цикла выполнить AddWithValue, а для остальных использовать готовый параметр (чтобы не клерить через Clear, если лениво писать строчку кода).Ага... Обязательно нужно добавить еще говнокода, чтобы определить, а не первая ли строка в цикле обрабатывается...
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048148
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
sphinx_mvЕще раз для особо "продвинутых": у меня УЖЕ ЕСТЬ экземпляр параметра с нужными основными атрибутами: имя, тип данных, размерность - это по самому скромному минимуму...
Еще раз для не особо смышленых - ты можешь и новый параметр в каждой итерации генерить, супер прироста скорости ты не получишь.

sphinx_mvИ мне СОВЕРШЕННО не только НЕ нужен, но во многих случаях его еще и физически НЕВОЗМОЖНО использовать, метод AddWithValue, и, тем более - метод Clear, ибо их сочетание в цикле внутри кода от "суперского гуру" - пример редкостного говнокода, который простителен ТОЛЬКО для начинающих программистов-студентов на лабораторках по программированию.
Кодирующая обезьянка до сих пор не поняла, что написала гавнокод, который убог по своей сути? Clear особо сильно не заговнял бы твой гавнокод.

sphinx_mvТут главное, чтобы Вам не вынесло мозги Вашим говнокодом.
Гавнокод у тебя в подсознании, которое абсолютно бездумно пытается что-то написать.

sphinx_mvДесятки/сотни/тысячи раз в цикле выполнять инициализацию экземпляра (не считая необходимости настроить дополнительные атрибуты экземпляра), для который совершенно безболезненным образом можно неоднократно присваивать новое значение Value - это не просто круто... ЭТО - ОЧЕНЬ КРУТО!!!
Десятки/сотни/тысячи раз в цикле выполнять инициализацию экземпляра - это очень круто, особенно для тебя. Десятки/сотни/тысячи раз в цикле выполняют такие операции только параноики вроде тебя, а нормальные люди пользуются балком (не только SqlBulkCopy, есть иные вариации), SSIS, DTS, ORM наконец.

sphinx_mvА!!! Так Вам УЖЕ сделали трепананацию?! 8()
Может и про лоботомию не забыли?
Откуда ты знаешь столько умных слов? Опытный в этом деле, однако.

sphinx_mvНу, с Вашими познаниями стандартов Вам еще леучиться и ле учиться...
Да уж, с твоими дегенеративными умениями стряпать хранимые процедуры, пакеты и бизнес логику на оракле с единичным по иерархии наследованием - только сверстников в детсаде веселить. Продолжай дальше пыжиться.

sphinx_mvТо Вы с основами объектно -ориентированного программирования убились об стену...
Уж не напоминай, ты так весьма прискорбно наложил в штаны от слов инкапсуляция, полиморфизм и наследование, что твои унылые хранимые процедуры начали рваться по шву. Было смешно.

sphinx_mvТо для Вас дословное майкрософтовское определение термина "code-behind" стало означать что-то более другое, чем разделение кода и верстки в ASP.NET...
Ты до сих пор так ничего и не поняла, блондинка - code-behind разделяет серверный код (логику и декларативный aspx/ascx). Вёрстка разделяется только в твоей больной фантазии - садись, опять двойка.

sphinx_mvТо для Вас рекомендация относительно ОЧЕНЬ ЧАСТНОГО случая использования одного конкретного, отдельно взятого наследника DbParameterCollection , который вызывает когнитивный дисонанс мсу-образных говнокодеров, внезапно становятся "бэст практис"...
Всё намного банальнее - твои мозги не умеют воспринимать и интерпритировать эти частные случаи под конкретную реализацию, основанную на дрокументированную рекомендацию.

sphinx_mvВот и применяйте! Если не знаете не только основ ADO.NET, но и функционала базовых класов в .NET...
Ты еще из яйца не вылупился, когда тут во всю тёрли об основах адо и дотнета, даже не то, чтобы что-то писать на говно-хп. Иди RTFM кури, недоросль.

sphinx_mvА я НЕ хочу, НЕ должен, НЕ обязан и НЕ буду использовать Вашу говнокодерскую "бэст практис" в своих разработках - к счастью, Ваш бред к моей нынешней платформе разработки даже и НЕ применим: эквивалентная коллекция параметров просто "положила" на Ваш когнитивно-диссонансный "супер-AddWithValue".
Ты можешь даже убить себя об стену, мне фиолетово. А AddWithValue будут использовать те, кто понимает что это и зачем оно нужно.

sphinx_mvБла-бла-бла...
Говнокодеры, естественно НЕ знают, что DbParamaterCollection, от которого наследуются все XXXParameterCollection, НЕ содержит метода AddWithValue - во такая "бэст практис"... Соответственно, даже Мелкомягкие считают вполне вменяемым решением необязательность реализации этого метода по усмотрению разработчиков соотвествующих библиотек классов. Были бы у Вас мозги, это, может быть, заставило бы Вас задуматься, с чего бы это вдруг...
Ахринеть, прикинь, MarshalByRefObject тоже ничего не знает о AddWithValue. К чему твой унылый высер? Какую-то ты ахиненю задвинул про то, что там мелкомягкие считают про необязательность. Кодируеющей обезьянке невдомёк, что она глупости пишет?

sphinx_mvГовнокод! Начиная с того, что он НЕ РАБОЧИЙ - то есть, ВООБЩЕ: не приведено еще ...дцать экранов Вашего (дополнительного) говнокодирования, чтобы это хотя бы можно было попытаться откомпилировалось...
Посмешила твоя тупость. Дцать экранов кода сокрыто от прикладного разработчика в виде кодогенерирующего прокси-контекста, который строит дата модель на основе объектов хранилища. У тебя 2 варианта - убить себя об стену или-таки почитать в своей любимой википедии, что такое ORM и какую оно нишу занимает в современной разработке. И только после этого кодирующая обезьянка поймет, что прикладной код станет очень компактным, типизированным и удобоваримым. В отличие от твоего датасетного гумна, которое ты тут опорожнил в форум.

sphinx_mvИ заканчивая тем, что ни AddWithValue, ни SqlBulkCopy, которые были указаны в исходных условиях, нигде не используются..
Няньчить тебя будут воспитатели в садике, может и по-буквам код распишут. Если не хватает ума написать элементарщину с помощью AddWithValue и SqlBulkCopy - можешь даунгрейдиться до яслей, там точно помогут.

sphinx_mvСоответственно, Вы всегда можете получить Вашу медаль говнокодера по первому Вашему требованию...
Неуж-то медаль вручит кодирующая обезьянка, которая декларативный серверный код путает с клиентской вёрсткой?

sphinx_mvBulkCopy - даже для Вас это вызвало немеряные затруднения.
SqlBulkCopy я использовал столько раз в подобных задачах, сколько твоя унылая воспаленная фантазия генерила гавнокод на оракловых хранимых процедурах.

sphinx_mvНЕ КАНАЕТ: ПРИМЕР КОДА - В СТУДИЮ!!!
МАКСИМАЛЬНО ПОЛНЫЙ ПРИМЕР!
Чудик, я тебя ссылку дал с кодом. Никак не осилишь? Тогда в садик сходи, детвора поможет.

sphinx_mvСтроку подключения к БД и заполнение DataTable исходными данными из файла Excel разрешаю пропустить...
Это ты уже осилил? Занятно. Еще вчера ты просил весь код.

sphinx_mvЕсли ВЫ не можете САМОСТОЯТЕЛЬНО показать вменяемый пример кода (ну, хотя бы копи-пастом), ВЫ - ЛАМЕР и ЛОХ! Очень, надеюсь, лохи и ламеры не обидятся за эти сравнения...
Ребёнок, ты из каких кустов вылез? Твои унылые словечки про лохов одногрупникам рассказывай. А по поводу кода - если ты SqlBulkCopy так и не осилил из документации, в которой в конце есть подробный расписанные пример - то тебе дорога только к кирпичной стене.

sphinx_mvЕсли Вы обосрались, для начала хотя бы подмойтесь - воняет...
Если я обосрался на тебя, то ты не нуждаешься в чистке.

sphinx_mvАга... Обязательно нужно добавить еще говнокода, чтобы определить, а не первая ли строка в цикле обрабатывается...
Ну конечно, ламеры не знают о существовании тернартного оператора (только не проси опять приводить пример, потому что обезьянка не умеет читать документацию), с помощью которого в одну строчку можно сделать такую проверку. Во-вторых, тернарную операцию нужно проводить до цикла. Жжешь как всегда.

Ну и по поводу code-behind, вот тебе ответ на твой высер 13472778

sphinx_mv"Не говорите, что мне делать - и я не скажу куда Вам пойти." (с)
Обезьянка разучила новую скороговорку? Занятно.
"Чего в голове нет, того к ушам не пришьёшь" (с)

sphinx_mvЕсли Вам кажется, что ТС ДОЛЖЕН Вам отвечать на тему сроков - Вы можете САМОСТОЯТЕЛЬНО задать ему этот вопрос...
И моего РАЗРЕШЕНИЯ Вам для этого СОВЕРШЕННО не требуется...
Зачем мне самостоятельно узнавать о сроках? Это же ты начал вонь про неуточненные сроки. Или уже нить обсуждения потерял?

sphinx_mvКстати, если у Вас в очередной раз проблемы с памятью: ТС говорил о РАБОТАЮЩЕМ приложении, для которого понятие "поиграться с новой технологией" ВООБЩЕ не применимы. Соотвественно, имеем очередные Ваши пустые измышлизмы.

Похожу проблемы с памятью у кого-то другого - ТС про "поиграться" вообще ничего не говорил. О чем ты вообще пишешь, фантазёр?

sphinx_mvЯ не знаю, что генерят Ваши мозги, но если Вы в своих "непонятно-чего-заключениях" пропустили вводные от ТС - это не мои проблемы...
Для начала нужно разучить буквы и научиться читать, чтобы понимать обсуждаемую предметику. Без этих азов у тебя нет шансов на успех.

sphinx_mvЕсли Вы при этом предположили, что у ТС есть ВСЕ необходимые ресурсы, упустив два из наиболее значимых, кто же ж Вам доктор, если только тупая (на большее Вас, почему-то никогда не хватает) констатация фактов способна вернуть Вас в реальный мир?
Ты сам себе перечишь: как можно предположить, что "у ТС есть ВСЕ необходимые ресурсы" и при этом "упустив пару значимых моментов"? Вода белая но при этом красная.
Ты прямо-таки блещешь нездоровой логикой, впрочем, не удивительно.

sphinx_mvЕсли бы у ТС были в команде (я даже, посмотрев в хрустальный шар, очень сильно сомневаюсь в самом наличии у него команды) разработчики для asp.net хоть с минимальным опытом, он бы не задавал такой простой вопрос о переходить/не переходить на него здесь - зуб даю!
Обычно такие как ты без этих самых зубов и остаются. Хрустальный шар можешь засунуть себе туда, где ему самое место - а у автора может быть команда (при нем, при параллельной команде/отделе и т.д.). Варианты одним не ограничиваются.

sphinx_mvБла-бла-бла...
Вам уже неоднократно указывалось, что мало знать название термина - нужно понимать, что этот термин подразумевает...
Читать тут.
Что ты мне хотел рассказать в этой статье? Тем, что тупой автор называет асп.нет вьюху html'ем и css'ом?
Вот пока такие как ты оболтусы пишут статьи на различных ресурсах, у нью дженерейшен имеется выбор - читать левый материал либо правильный.


sphinx_mvMS introduced CodeBehind, a technique which allows you to completely separate markup (HTML, CSS etc.) and code (C#, VB.NET etc.)
Перевести?
Даже не особо умная твоя википедия знает, что: http://ru.wikipedia.org/wiki/ASP.NET
"Возможность разделения визуальной части и бизнес-логики по разным файлам («code behind»)" (c)
речь идет о серверных элементах - *.cs и *.aspx (*.ascx, *.ashx).
"html+css" в качестве вью для код бехайнда - только твое воспаленное сознание может придумать. Учи матчасть, неудачник.

sphinx_mvВы почитать первоисточник (ASP.NET Code-Behind Model Overview) пробовали?
Пробовал, когда ты еще ссаться кипятком под стол ходил. От того, что написал первый пакет в оракле.

sphinx_mvCode-behind refers to code for your ASP.NET page that is contained within a separate class file. This allows a clean separation of your HTML from your presentation logic.
Перевод требуется?
В статье "html-ем" называют "aspx" (что не есть правильно) :

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
<%@ Language="C#" Inherits="MyStuff.MyClass" %>
<HTML>
    <body>
        <form id="MyForm" runat="server">
        <asp:textbox id="MyTextBox" text="Hello World" runat="server"></asp:textbox>
        <asp:button id="MyButton" text="Echo Input" Onclick="MyButton_Click" runat="server"></asp:button>
        <asp:label id="MyLabel" runat="server" />
        </form>
    </body>
</HTML>



Чтобы твоя тупая башка лучше понимала предметику, разжую - это "aspx", серверная страница с серверными элементами управления до рендеринга. После того, как код этой страницы будет отрендерен движком asp.net, клиент в браузере получит "html".
Так что в примере - не "html". В html невозможно использовать серверные элементы runat.

Ты начал свою вонь про клиент "html" и SQL. Я твоей тупой башке уже много времени объясняю о "Code-Behind" или View + SQL. Если ты до сих пор не можешь понять разницу между "html" (клиент, после рендеринга) и "aspx" (сервер, до рендеринга) - сходи в ясли, там на пальцах покажут.
Ну что, балбесу всё понятно или дальше дожевать?

sphinx_mvБла-бла-бла...
Мусье, таки, не знает, в чем заключается разница между "дополнительной абстракцией" и "прямым подключением к БД"?
1. Кодирующая обезьянка выучила новое слово "дополнительная абстракция"?
2. Этот высер, вообще, о чем?

sphinx_mvА уж выдавать "прямое подключение" LinqDataSource, SOA и пр. - это вообще верх "совершенства" познаний...
Чудо, LinqDataSource напрямую подключается к БД и транслирует запросы через ORM датаконтекст. Это его прямая обязанность, неуч.

sphinx_mvМожет, все-таки, перед тем как другим советовать, Вам бы самому почитать "букварь"? И не один...
Советовать тебе будут дети в саду, где тебе и место. А я тебе, балбесу, пишу о том, как это работает.

sphinx_mvВам снизили дозу галоперидола? Наверное, врач погорячился...
Ты после трепанации черепа? Заметно тебя потрепали врачи...

sphinx_mvСудя по уровню и качеству Ваших знаний, лучше не учиться - только зря время потеряешь...
Судя по количеству твоей вброшенной безумной фантазии про html, codebehind, sql, хп, пакеты, логика - тебя нужно срочно закрывать в психбольнице и лечить таблетками.

sphinx_mvПочему я вменяемо должен что-то пояснять невменяемому, который работу с внешними устройствами исключил из круга задач, решаемых при помощи веб?
Почему я вменяемо должен что-то пояснять шизофренику, который не знает, что такое activex, silverlight, flash и html5? Какой ему веб, он еще с хранимыми процедурами не научился работать.

sphinx_mvЭто приложение писали такие как Вы: лозунги при нуле знаний с минус-бесконечной способности думать...
Это приложение писали такие как ты, безумные безудержные ламеры, которые ничего не понимают в том, что делают.

sphinx_mvТ.е., Вы до сих пор не поняли, что предлагаете?!
То есть я до сих пор понял, что предлагаю.

sphinx_mvИ, кстати, не только в этом конкретном обсуждении одного очень конкретного десктопного приложения...
Детско-юношеский максимализм, однако... Бывает... К сожалению, не у всех проходит...
Параною лучше подлечи, а то загнешься ненароком.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048171
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ, хватит уже срач разводить. Промохнулся ты с AddWithValue в контексте вызова хранимой процедуры с параметрами в цикле, признай. :)
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048206
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAПромохнулся ты с AddWithValue в контексте вызова хранимой процедуры с параметрами в цикле, признай. :)
не признаю :) Инициализируй через AddWithValue первое значение и крутись дальше в цикле.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048214
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAПромохнулся ты с AddWithValue в контексте вызова хранимой процедуры с параметрами в цикле, признай. :)
не признаю :) Инициализируй через AddWithValue первое значение и крутись дальше в цикле.На хера?
Код: c#
1.
2.
3.
4.
public SqlParameter AddWithValue(string parameterName, object value)
{
    return this.Add(new SqlParameter(parameterName, value));
}
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048226
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAНа хера?
Рекомендация.
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048242
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУskyANAНа хера?
Рекомендация.Рекомендация гласит: "используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение ".

А требуется добавить параметры:
а. перед циклом;
б. задав им имя, SqlDbType и размер перед циклом;
в. значение параметров менять в цикле.

На хера использовать метод AddWithValue? :)
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048257
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAРекомендация гласит: "используйте AddWithValue, когда требуется добавить параметр, задав его имя и значение ".
Правильно.

skyANAА требуется добавить параметры:
а. перед циклом;
б. задав им имя, SqlDbType и размер перед циклом;
в. значение параметров менять в цикле.
а. Рекомендация фиолетово, перед чем вызывается AddWithValue. Вызов может быть перед циклом, после цикла, в рекурсионном методе, в ASP.NET MVC приложении, в SQL CLR приложении. Вызов может быть утром или вечером. Так же AddWithValue может писать мужчина или женщина.
б. В рекомендации указано про 2 параметра (имя и значение). Добавляй их. А потом доинициализировать всем чем угодно можно в любое время.
в. Меняй. До цикла мы создали параметр через AddWithValue и сохранили в переменной, а в цикле юзаем эту переменную.

skyANAНа хера использовать метод AddWithValue? :)
Рекомендация :)
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048266
Фотография skyANA
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
МСУ, короче я поржал. Объясни зачем появилась данная рекомендаци, ещё поржу. А ещё лучше пример кода напиши. :)
...
Рейтинг: 0 / 0
DataSet и SQL Server
    #38048273
Фотография МСУ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
skyANAМСУ, короче я поржал. Объясни зачем появилась данная рекомендаци, ещё поржу. А ещё лучше пример кода напиши. :)
skyANA, я тоже глумлюсь. Чтобы объяснить, зачем оявилась данная рекомендация, нужно обратиться к майкрософту. Черкани им, вместе поржем.
Еще один... Какой код тебе написать, как создать параметр через AddWithValue до цикла и в цикле юзать его Value? Ты издеваешься?
...
Рейтинг: 0 / 0
25 сообщений из 54, страница 1 из 3
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / DataSet и SQL Server
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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