Страница: 1 | 
		
		 
			   
			 
			 
			 
			 Страница: 1 | 
 
			
 
  
		
     
  
    
Вопрос: Создание и дополнение бай данных.
     
    
Добавлено: 25.03.06 19:39
     
      
  
				
			  
					 
			
				 
    
		
       
    
Автор вопроса:  
     ZoomerSD | ICQ: 148640473
 ZoomerSD | ICQ: 148640473 
      
       
  
Госопода программисты, подскажите пожалуйста, как на Vb создать новую базу данных db или mdb, моздать в существующей новую таблицу, и создать в существующей таблице новый столбец?
 
    
Заранее спасибо.
				
		
		
					 
			
				 
  
		
     
  
    
Ответы
     
    
Всего ответов: 4
     
      
  
		
	  
			 
	
		 
    
       
    
Номер ответа: 1 
      
Автор ответа: [root]
 [root]

Вопросов: 45
Ответов: 1212
      
 Web-сайт:  
 Профиль |  | #1
      
Добавлено:  25.03.06 20:37
       
    
       
  
дык зайди в примерах, должно быть
 
    
		
	  
			 
	
		 
    
       
    
Номер ответа: 2 
      
Автор ответа: Alexandrus
 Alexandrus



ICQ: 496782368 
Вопросов: 18
Ответов: 312
      
 Web-сайт:  
 Профиль |  | #2
      
Добавлено:  25.03.06 23:16
       
    
       
  
ZoomerSD:
 
    
На vbrussian.com\Статьи было две статьи по интересующему тебя вопросу.
1.Программное создание базы данных с помощью ADOX - Часть 1
http://www.vbrussian.com/Article.asp?ID=78
2.Программное создание базы данных с помощью ADOX - Часть 2
http://www.vbrussian.com/Article.asp?ID=80
С ув.Alex
		
	  
			 
	
		 
    
       
    
Номер ответа: 3 
      
Автор ответа: HACKER
 HACKER








 
Разработчик Offline Client
Вопросов: 236
Ответов: 8362
      
 Профиль |  | #3
       
Добавлено:  27.03.06 22:07
       
    
       
  
Уточни какими средствами?
 
    
DAO or ADO?
		
	  
			 
	
		 
    
       
    
Номер ответа: 4 
      
Автор ответа: sne
 sne





Разработчик Offline Client
ICQ: 233286456 
Вопросов: 34
Ответов: 5445
      
 Web-сайт:  
 Профиль |  | #4
      
Добавлено:  27.03.06 22:25
       
    
       
  
(c) ms-black offline client
 
    
Public Function CreateStructDB() As Long
On Error GoTo EndCreateStructDB
    Const StructSize = 46 'сумма количество таблиц и количества полей в них, минус 1 (конец массива)
    Dim MyDBase As DAO.Database 'база данных
    Dim MyTable As DAO.TableDef 'таблица
    Dim MyField As DAO.Field    'столбец
    Dim MyIndex As DAO.Index    'индекс
    Dim Names() As String  'названия таблиц и полей
    Dim Types() As Variant 'типы полей (таблица=0)
    Dim Sizes() As Variant 'размеры текстовых полей
    Dim i As Integer
    Names = Split("AUTORS ID USERNAME FIRSTNAME LASTNAME AGE CITY MAIL WWW ICQ ANSWERS QUESTION SABOTAGES_RULES LAST_IN IS_ADMIN DATE_REG DATE_LAST_UPDATE_PROF FORUMS ID NAME DESCRIPTION TYPE IN_ANSWERS ID ID_QUESTION ID_IMAGE ID_AUTOR DATE_ADD TEXT IS_READ IN_QUESTIONS ID ID_FORUM ID_IMAGE ID_AUTOR SUBJECT DATE TEXT LAST_DATA_ANSWER IS_READ OUTBOX ID ID_FORUM ID_TOPIC ID_IMAGE SUBJECT TEXT", " ", -1)
    Types() = Array(0, 4, 10, 10, 10, 10, 10, 10, 10, 10, 4, 4, 2, 8, 1, 8, 8, 0, 4, 10, 12, 4, 0, 4, 4, 4, 4, 8, 12, 1, 0, 4, 4, 4, 4, 10, 8, 12, 8, 1, 0, 4, 4, 4, 4, 10, 10)
    Sizes() = Array(0, 0, 255, 50, 50, 50, 64, 255, 255, 32, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 50)
    Set MyDBase = DBEngine.CreateDatabase(App.Path & "\DataBase\vbnet.mdb", dbLangCyrillic)
    For i = 0 To StructSize
        'в этом цикле создаем все таблицы, поля и индексы
        If Types(i) = 0 Then
            'таблица
            Set MyTable = MyDBase.CreateTableDef(Names(i))
        Else
            'поле
            If Sizes(i) = 0 Then
                'не текстовое поле
                Set MyField = MyTable.CreateField(Names(i), Types(i))
            Else
                'текстовое поле
                Set MyField = MyTable.CreateField(Names(i), 10, Sizes(i))
            End If
            MyTable.Fields.Append MyField
            If Names(i) = "ID" Then
                'здесь создаются индесы таблиц
                Set MyIndex = MyTable.CreateIndex("PrimaryKey" 
                MyIndex.Primary = True
                Set MyField = MyIndex.CreateField(Names(i), Types(i))
                MyIndex.Fields.Append MyField
                MyTable.Indexes.Append MyIndex
            End If
            If i = StructSize Then
                'если это последний элемент (поле) в массиве
                MyDBase.TableDefs.Append MyTable
            ElseIf Types(i + 1) = 0 Then
                'если после элемента (поля) идет таблица
                MyDBase.TableDefs.Append MyTable
            End If
        End If
    Next 'i
    MyDBase.TableDefs.Refresh
    Set MyIndex = Nothing 'освободить экземпляр объекта
    Set MyField = Nothing 'освободить экземпляр объекта
    Set MyTable = Nothing 'освободить экземпляр объекта
    Set MyDBase = Nothing 'освободить экземпляр объекта
    CreateStructDB = 0
    Exit Function
EndCreateStructDB:
    Debug.Print "Error #" & Err.Number & " Into " & Err.Source & ": " & Err.Description
    CreateStructDB = Err.Number
End Function