Страница: 1 |
|
Вопрос: Добавление записей в таблицу.
|
Добавлено: 17.04.07 18:43
|
|
Автор вопроса: ayilec
|
Есть таблица
Public dt_grid As New DataTable()
Я в неё добавляю строку по нажатию кнопки
dr = dt_grid.NewRow()
dr(0) = Me.CbMaterID.Text()
dr(1) = Me.CBSpeck.Text()
dr(2) = Me.CBPack.Text()
dr(3) = Me.CbLine.Text()
dr(4) = Me.DataBegin.Text()
dr(5) = Me.MaskTimeBegin.Text()
dr(6) = Me.DateEnd.Text()
dr(7) = Me.MaskTimeEnd.Text()
dr(8) = Format(Val(Me.VolDal.Text) * Val(Me.CbKoef_DAl.Text))
dr(9) = Me.CbMaterName.Text()
dr(10) = Me.cbMkeToStock.Text()
dr(11) = Me.CbVer.Text()
dr(12) = Me.CbBrew.Text()
dr(13) = Me.txtLogin.Text()
dr(14) = Me.CbKoef_DAl.Text()
dr(15) = Me.CbSpacID.Text()
dr(16) = Me.CbPackID.Text()
dt_grid.Rows.Add(dr)
И вывожу в DataGridView
Me.DataGridView1.DataSource = dt_grid
А как мне добавить все записи из dt_grid в таблицу БД Access???????
Я делала так.
Dim insSQL As String
Dim insDA As OleDbDataAdapter
Dim insDS As DataSet
Dim pc As OleDbParameterCollection
insSQL = "INSERT INTO SAP_DBGrid (MaterialID,MaterialName,MkeToStock,date_begin,time_begin,date_end,time_end,Volume,Ver,LineName,Brew,Login,Koef_Dal,SpeckID,PackID,RussianSpecName,RussianPackName)" & _
"VALUES(@MaterialID,@MaterialName,@MkeToStock,@Date_begin,@Time_begin,@Date_end,@Time_end,@Volume,@Ver,@LineName,@Brew,@Login,@Koef_dal,@SpeckId,@PackId,@RussianSpecName,@RussianPackName)"
conStr = "PROVIDER=Microsoft.Jet.OLEDB.4.0;Data Source=|DataDirectory|\Client.mdb"
con = New OleDbConnection(conStr)
Dim cmd As New OleDbCommand(insSQL, con)
insDA = New OleDbDataAdapter()
'insDS = New DataSet()
pc = cmd.Parameters
pc.Add("@MaterialID", OleDbType.Integer, 0, "MaterialID").Value = Me.CbMaterID.Text
pc.Add("@MaterialName", OleDbType.VarChar, 0, "MaterialName").Value = Me.CbMaterName.Text
pc.Add("@MkeToStock", OleDbType.VarChar, 0, "MkeToStock").Value = Me.cbMkeToStock.Text
pc.Add("@date_begin", OleDbType.VarChar, 0, "Date_begin").Value = Me.DataBegin.Text
pc.Add("@time_begin", OleDbType.VarChar, 0, "Time_begin").Value = Me.MaskTimeBegin.Text
pc.Add("@date_end", OleDbType.VarChar, 0, "Date_end").Value = Me.DateEnd.Text
pc.Add("@time_end", OleDbType.VarChar, 0, "Time_end").Value = Me.MaskTimeEnd.Text
pc.Add("@volume", OleDbType.Decimal, 0, "Volume").Value = Me.VolDal.Text
pc.Add("@ver", OleDbType.VarChar, 0, "Ver").Value = Me.CbVer.Text
pc.Add("@LineName", OleDbType.VarChar, 0, "LineName").Value = Me.CbLine.Text
pc.Add("@Brew", OleDbType.VarChar, 0, "Brew").Value = Me.CbBrew.Text
pc.Add("@Login", OleDbType.VarChar, 0, "Login").Value = Me.txtLogin.Text
pc.Add("@Koef_dal", OleDbType.Decimal, 0, "Koef_dal").Value = Me.CbKoef_DAl.Text
pc.Add("@SpeckId", OleDbType.Integer, 0, "SpeckId").Value = Me.CbSpacID.Text
pc.Add("@PackId", OleDbType.Integer, 0, "PackId").Value = Me.CbPackID.Text
pc.Add("@RussianSpecName", OleDbType.VarChar, 0, "RussianSpecName").Value = Me.CBSpeck.Text
pc.Add("@RussianPackName", OleDbType.VarChar, 0, "RussianPackName").Value = Me.CBPack.Text
insDA.InsertCommand = cmd
insDA.Update(dt_grid)
Что то, тут не то. Ошибку не выдает и таблицу не обновляет.
Ответить
|
Номер ответа: 2 Автор ответа: ayilec
Вопросов: 2 Ответов: 1
|
Профиль | | #2
|
Добавлено: 18.04.07 10:20
|
Проблема не в этом, а в том, что параметры не получают
значения из dt_grid.
Ответить
|
Номер ответа: 3 Автор ответа: HACKER
Разработчик Offline Client
Вопросов: 236 Ответов: 8362
|
Профиль | | #3
|
Добавлено: 18.04.07 13:50
|
Где? Здесь?
insSQL = "INSERT INTO SAP_DBGrid (MaterialID,MaterialName,MkeToStock,date_begin,time_begin,date_end,time_end,Volume,Ver,LineName,Brew,Login,Koef_Dal,SpeckID,PackID,RussianSpecName,RussianPackName)" & _
"VALUES(@MaterialID,@MaterialName,@MkeToStock,@Date_begin,@Time_begin,@Date_end,@Time_end,@Volume,@Ver,@LineName,@Brew,@Login,@Koef_dal,@SpeckId,@PackId,@RussianSpecName,@RussianPackName)" А что должны? :_\) Посмотри синтаксис INSERT INTO
insert into ТАБЛИЦА (поле1, поле2) VALUES (значение_для_поля1, значение_для_поля2)
т.е. должно быть что-то вроде...
sql$ = "insert into SAP_DBGrid (" & MaterialID &", " & MaterialName & " VALUES (" & CbMaterID.Text & ", " & CBSpeck.Text)
Ответить
|
Страница: 1 |
Поиск по форуму