Chirurgia spinală minim invazivă
Chirurgia spinală minim invazivă oferă pacienților oportunitatea unui tratament eficient, permițându-le o recuperare ultra rapidă și nu în ultimul rând minimizând leziunile induse chirurgical. Echipa noastră utilizează un spectru larg de tehnici minim invazive, din care enumerăm câteva: endoscopia cu variantele ei (transnazală, transtoracică, transmusculară, etc), microscopul operator, abordurile trans tubulare și nu în ultimul rând infiltrațiile la toate nivelurile coloanei vertebrale. www.neurohope.ro |
ADO si DataGrid
Last Updated: Apr 22 2013 05:33, Started by
eugen55ro
, Apr 12 2013 07:28
·
0
#1
Posted 12 April 2013 - 07:28
Salut,
Incerc sa fac un programel in vb6 pentru mentenanta unei baze de date. Totul merge ok, mai putin update-ul si delete-ul... (care initial mergeau.. nu imi pot da seama de ce nu mai functioneaza...). Am incercat tot ce mi-a trecut prin minte, tot ce am gasit pe net, insa fara succes. Eroarea care apare este: Microsoft DataGrid Control: Insufficient base table information for updateing or refreshing. Postez mai jos codul, in speranta ca veti fi amabili si ma veti ajuta cu o idee. Private Sub list1_DblClick() Dim sSettingLog As String sSettingLog = GetINISetting("LOG", "NAME", App.Path & "\artsDBv2.ini") On Error GoTo cmdReceiveError: cmdReceiveError: If Err.Number <> "0" Then Open sSettingLog For Append As #1 Print #1, Now() & " -> > > [list1_DblClick] - " & "[" & Err.Description & " -> > > " & Err.Number & "]" Close #1 Resume Next End If Dim ipp As String Dim nnume As String Dim sql As String Dim MyRs As ADODB.Recordset Set MyRs = ADO.Recordset Dim numar As String ipp = DataGrid2.Columns(5) nnume = DataGrid2.Columns(1) Text4.Text = nnume & "->" & ipp Text1.Text = list1 sql = "SELECT * FROM " & list1 & """" sql = "SELECT TOP 0 * FROM " & list1 & """" ADO.ConnectionString = "Driver={c-treeSQL ODBC Driver};Host=" & ipp & ";DSN=PumaPro;Port=6597;Database=DataBase;UID=User; PWD=Password;Option=3" DataGrid1.ScrollBars = dbgAutomatic Form1.DataGrid1.AllowUpdate = True Form1.DataGrid1.AllowDelete = True ADO.RecordSource = sql ADO.Refresh Set DataGrid1.DataSource = ADO DataGrid1.Columns(0).Width = 0 Text2.Text = DataGrid1.ApproxCount list2.Clear Dim NumberOfColumns As Variant Dim r, c As Integer NumberOfRows = ADO.Recordset.RecordCount NumberOfColumns = ADO.Recordset.Fields.Count For c = 1 To NumberOfColumns - 1 list2.AddItem ADO.Recordset.Fields.Item©.Name Next Label5.Visible = True End Sub Multumesc anticipat! |
#2
Posted 12 April 2013 - 14:42
Userul are drepturi de Update/Delete pe tabela respectiva?
Undeva ai "Select Top 0 * From...", ceea ce-ti returneaza doar capul de tabel, fara nici o inregistrare. |
#3
Posted 14 April 2013 - 20:13
Da, userul are drepturi.
Comanda corecta este cea de jos... am copiat alta in care am nevoie doar de capul de tabel fara nicio inregistrare... sql = "SELECT * FROM " & list1 & """" |
#5
Posted 22 April 2013 - 05:33
Ai o cheie primara la tabelul in cauza ? El face update de nebun, cum localizeaza inregistrarea ? Cum arata codul cu medoda Recordset.Save ori Recordset.Update ?
MyRs ce face pe acolo ? Edited by neagu_laurentiu, 22 April 2013 - 05:45. |
Anunturi
▶ 0 user(s) are reading this topic
0 members, 0 guests, 0 anonymous users