powered by simpleCommunicator - 2.0.53     © 2025 Programmizd 02
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Запись в БД
8 сообщений из 33, страница 2 из 2
Запись в БД
    #39186777
Артем G
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot iddqd_win] update записывает во все поля одинаковые значения последнего элемента массива, как это исправить?
Код: vbnet
1.
2.
3.
4.
        For x = 1 To UBound(datemas)
            TextBox2.Text = TextBox2.Text & x & ". " & datemas(x) & " - " & DateDiff("d", datemas(x), Now.Date) & vbCrLf
            SqlCom = New OleDbCommand("Update Таблица1 set Текущая = '" & DateDiff("d", datemas(x), Now.Date) & "' where Дата = '" & datemas(x) & "'", Con)
        Next x



Вопрос. А что у вас в массиве UBound(datemas)? сделайте дебаг и вернитесь с результатом.
...
Рейтинг: 0 / 0
Запись в БД
    #39186787
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iddqd_winТак?
нет. [b]Now.Date [/b] - это в дотненом коде
в аксессном SQL- Date() как и написано
...
Рейтинг: 0 / 0
Запись в БД
    #39186800
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iddqd_winТак?Кавычки, разумеется, заэкранировать - даже на форуме ошибка синтаксиса видна.
И адаптер-то здесь зачем?
...
Рейтинг: 0 / 0
Запись в БД
    #39186872
iddqd_win
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Proiddqd_winТак?Кавычки, разумеется, заэкранировать - даже на форуме ошибка синтаксиса видна.
И адаптер-то здесь зачем?

SqlCom = New OleDbCommand("update [Таблица1] set [Текущая] = DateDiff(\"d\", [Дата] Date())", Con)
SqlCom.ExecuteNonQuery()

Ошибка 1 Отсутствует аргумент для параметра "connection" в "Public Sub New(cmdText As String, connection As System.Data.OleDb.OleDbConnection, transaction As System.Data.OleDb.OleDbTransaction)".

Ошибка 2 Требуется запятая, ")" или допустимое продолжение выражения.

Ошибка 3 Невозможно преобразовать значение типа "System.Data.OleDb.OleDbConnection" в "System.Data.OleDb.OleDbTransaction".
...
Рейтинг: 0 / 0
Запись в БД
    #39186875
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Может рано вам еще такие сложные программы писать?
https://msdn.microsoft.com/ru-ru/library/267k4fw5(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb
Нет, ну правда, каждую запятую разжевывать теперь?
Может сначала прочитаете учебник все-ткаи?
...
Рейтинг: 0 / 0
Запись в БД
    #39186880
iddqd_win
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
[quot Артем G]iddqd_win update записывает во все поля одинаковые значения последнего элемента массива, как это исправить?
Код: vbnet
1.
2.
3.
4.
        For x = 1 To UBound(datemas)
            TextBox2.Text = TextBox2.Text & x & ". " & datemas(x) & " - " & DateDiff("d", datemas(x), Now.Date) & vbCrLf
            SqlCom = New OleDbCommand("Update Таблица1 set Текущая = '" & DateDiff("d", datemas(x), Now.Date) & "' where Дата = '" & datemas(x) & "'", Con)
        Next x



Вопрос. А что у вас в массиве UBound(datemas)? сделайте дебаг и вернитесь с результатом.

+ Me {WindowsApplication1.Form1, Text: Form1} WindowsApplication1.Form1
- datemas {Length=4} Date()
(0) #12:00:00 AM# Date
(1) #2/1/2016# Date
(2) #3/10/2016# Date
(3) #3/20/2016# Date
l #3/20/2016# Date
x 3 Long
...
Рейтинг: 0 / 0
Запись в БД
    #39186892
iddqd_win
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Shocker.Pro,

Спасибо, мил человек) Так бы и расцеловал), работает! И чтобы закрепить полученные знания) такой вопрос - а если я допустим захочу посчитать разницу не с известным днём(в данном случае сейчас), а скажем с предыдущей датой из этого же столбца, как изменится запрос?
...
Рейтинг: 0 / 0
Запись в БД
    #39186896
Фотография Shocker.Pro
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iddqd_winТак бы и расцеловал)
не стоит, я не сторонник европейских традиций в отношенияхiddqd_winа скажем с предыдущей датой из этого же столбцане стоит допускать стандартную ошибку новичков и сравнивать таблицу в базе данных с эксельной таблицей. Порядок записей в БД не регламентируется и абсолютно произволен до тех пор, пока вы не использовали в запросе ORDER BY. Способов будет несколько в зависимости от того, как построена ваша таблица, какие там данные и что подразумевать под предыдущей строкой.
Что касается построения SQL-запросов, повторюсь, вам нужно
а) прочитать учебник по SQL
б) в случае вопросов обращаться в подфорум, соответствующий вашей СУБД
...
Рейтинг: 0 / 0
8 сообщений из 33, страница 2 из 2
Форумы / WinForms, .Net Framework [игнор отключен] [закрыт для гостей] / Запись в БД
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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