Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: Выбор таблиц из списка доступных в БД
     
    
Добавлено: 23.09.08 18:21
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
     Михаил
 Михаил
      
       
  
но условие такое, что мы не знаем названия этих таблиц!
 
    
есть adodc и true DBGrid.
в настройках (через custom\record source\ table or stored procedure name если указано в command type 2) adodc можно выбирать таблицы, но как сделать это в run-time.
подскажите пожалуйста!!
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 8
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа: Arseny
 Arseny


ICQ: 298826769 
Вопросов: 53
Ответов: 1732
      
 Профиль |  | #1
       
Добавлено:  24.09.08 08:08
       
    
       
  
Подключаешь в References библиотеку Microsoft DAO 3.6 Object Library
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа: Arseny
 Arseny


ICQ: 298826769 
Вопросов: 53
Ответов: 1732
      
 Профиль |  | #2
       
Добавлено:  24.09.08 08:18
       
    
       
  
P.S. Дает все таблицы, включая скрытые системные.
 
    
Можно и по-другому: попробовать считать данные из таблицы msysobjects, но там с правами доступа заморочка может возникнуть.
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа: Михаил
 Михаил




Вопросов: 1
Ответов: 4
      
 Профиль |  | #3
       
Добавлено:  24.09.08 08:21
       
    
       
  
Простите! Забыл сказать что мне нужно на ADO.
 
    
И скрытае и системные нужно откунуть.
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа: Arseny
 Arseny


ICQ: 298826769 
Вопросов: 53
Ответов: 1732
      
 Профиль |  | #4
       
Добавлено:  24.09.08 08:29
       
    
       
  
ну так список получишь, и работай с ними в адо на здоровье.  
     названия скрытых таблиц начинаются с msys*
 названия скрытых таблиц начинаются с msys*
чисто на адо - я не знаю как. только считать таблицу msysobjects, получится - дерзай.
		
	  
			 
	
		 
    
       
    
Номер ответа: 5 
      
Автор ответа: Михаил
 Михаил




Вопросов: 1
Ответов: 4
      
 Профиль |  | #5
       
Добавлено:  24.09.08 10:24
       
    
       
  
Вот вроде бы нашел решение! Но не работает. Подскажите а тоя уже совсем не соображаю!
 
    
Public Sub OpenSchemaX()
   im cnn1 As New ADODB.Connection
im cnn1 As New ADODB.Connection
   im rstSchema As ADODB.Recordset
im rstSchema As ADODB.Recordset
  cnn1.Open "Provider=Microsoft.Jet.OLEDB.4.0; _
       ata Source=C:\VB-DB\Nwind.mdb;"
ata Source=C:\VB-DB\Nwind.mdb;"
  Set rstSchema = cnn1.OpenSchema(adSchemaTables)
     o Until rstSchema.EOF
o Until rstSchema.EOF
    If rstSchema.Fields("TABLE_TYPE" = "VIEW" Then
 = "VIEW" Then
      MsgBox "View name: " & rstSchema.Fields _
          "TABLE_NAME"
"TABLE_NAME" & vbCr
 & vbCr
    End If
    rstSchema.MoveNext
  Loop
  rstSchema.Close
  cnn1.Close
End Sub
		
	  
			 
	
		 
    
       
    
Номер ответа: 6 
      
Автор ответа: Михаил
 Михаил




Вопросов: 1
Ответов: 4
      
 Профиль |  | #6
       
Добавлено:  24.09.08 11:14
       
    
       
  
 
    
вот это работает
		
	  
			 
	
		 
    
       
    
Номер ответа: 7 
      
Автор ответа: Arseny
 Arseny


ICQ: 298826769 
Вопросов: 53
Ответов: 1732
      
 Профиль |  | #7
       
Добавлено:  24.09.08 11:30
       
    
       
  
пятый пост выглядит отпадно.  
     
		
	  
			 
	
		 
    
       
    
Номер ответа: 8 
      
Автор ответа: Михаил
 Михаил




Вопросов: 1
Ответов: 4
      
 Профиль |  | #8
       
Добавлено:  24.09.08 11:31
       
    
       
  
Ага! Забыл в код включить