Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Многомерный массив как виртуальная таблица Добавлено: 18.11.09 23:51  

Автор вопроса:  Millenium | Web-сайт: www.aliyev.us | ICQ: 629966 
Доброе время суток. Тут полночь :(
Я уже туплю. Многие из вас наверняка работали с базами данных и таблицами и помните как можно задать тип данных на определённую колонку. Хочу создать массив в котором 1-ый элемент будет Interegr, второй String, Третий и четрвёртый Date, пятый опять Дата, шестой Целое число.
И строк будет много...
В сём суть вопроса: те кто знают SQL, знают такой синтаксис
Select (*) From MyTable Whrere USER_ID = X
'или
Select USER_ID, USER_NAME, ACCEPTED, CANCELED, CANCELED_BY

Так вот, надо после создания этого динамического массива, как-то получать строку где ноем Пользователя равен Х и т.д. и т.п.
Так как в модуле где будет данная операция некуда всё записывать и отображать, нужно всё делать в памяти (динамически).
Клиенты будут отправлять свой ИД(ентификатор) и получать всю строку массива... Но при этом всём, у каждого элемента массива должен быть свой тип данных как было указано выше. Так как, есть другие функции которые тоже работают с этими массивами и могут получать данные только в своём формате...
Ссылки на примеры и на мануалы приветствуются!

Ответить

  Ответы Всего ответов: 6  

Номер ответа: 1
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #1 Добавлено: 19.11.09 00:24
В VB6 все это практически нереализуемо нормально.
Если хочешь все хранить в одном массиве, делаешь двухмерный массив Object (Variant).
Более правильно сделать тип, имеющий типизированные свойства для каждого поля и создать одномерный массив, хранящий экземпляры этого типа.


В дотнете все делается красиво
  1. Dim User = (From U In Users Where U.Id = 10).FirstOrDefault

Ответить

Номер ответа: 2
Автор ответа:
 Millenium



ICQ: 629966 

Вопросов: 118
Ответов: 903
 Web-сайт: www.aliyev.us
 Профиль | | #2
Добавлено: 19.11.09 00:54
  1. Public Type usrParam
  2.     uID As Integer      'User ID
  3.     uName As String     'User Name
  4.     uStatus As Integer  'User Status
  5.     uAccepted As Date   'Accepted Date
  6.     uCanceled As Date   'Canceled Date
  7.     uCancBy As Integer  'Canceled by
  8. End Type
  9.  
  10. Global userInfo() As usrParam


Это что-то типа этого?
А как потом заполнять и правильно вычитывать? Главное поиск! :-[ Туплю... но завтра в 10 должен здать последний модуль, в коем это и должно реализоватся...

З.Ы.: В пректе что только не смешано. КЛиентская часть половина на EXE, для админов и руководства на Web, посередние в 2=х, 3-х местах длл-ки и два сервера :) Почему 2? Это уже другой вопрос :)

Ответить

Номер ответа: 3
Автор ответа:
 Millenium



ICQ: 629966 

Вопросов: 118
Ответов: 903
 Web-сайт: www.aliyev.us
 Профиль | | #3
Добавлено: 19.11.09 00:57
  1.     userInfo(1).uID = 1
  2.     userInfo(1).uCancBy = -1
  3.     userInfo(1).uAccepted = "28/10/2009"
  4.     userInfo(1).uCanceled = "--/--/----"
  5.     userInfo(1).uName = "Rashid Aliyev"

Так?

Ответить

Номер ответа: 4
Автор ответа:
 Artyom



Разработчик

Вопросов: 130
Ответов: 6602
 Профиль | | #4 Добавлено: 19.11.09 01:03
Я не помню точно, Type в VB6 это ссылочный или структурный тип.
Проверь, работает ли такой варинат, сохраняются ли свойства. Если да то ОК, но мне кажется что нужно будет классом сделать.

Ответить

Номер ответа: 5
Автор ответа:
 Millenium



ICQ: 629966 

Вопросов: 118
Ответов: 903
 Web-сайт: www.aliyev.us
 Профиль | | #5
Добавлено: 19.11.09 01:35
Да! На VB.Net я так и делаю. Просто тут задачка уже была мною сделана 2 года назад на 6-ке. Мне пришлось 5-6% кода подогнать а не переписывать всё заного :) Динамики тоже захотелось...
Работать-то работают...

Ответить

Номер ответа: 6
Автор ответа:
 SuperBot



ICQ: 341877777 

Вопросов: 0
Ответов: 1
 Профиль | | #6 Добавлено: 20.11.09 01:14
Если я правильно понял и Вам нужен массив массивов на VB6, то вот ссылка: http://forum.ricona.net.ua/showthread.php?t=95&page=2

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам