Dajte ideja

21 отговора 10 прегледа
#1

Dajte ideja

Znachi cjala sutrin tapeja nad slednoto: Imam DB na SQL server 7. Pisha edno prilozhenie na VB 6,0, v sastnost edin class. kakto i da e. Iskam da skaniram Indexes za vsjaka table v DB. Ima edna store procedure "sp_indexes", obache nesto ne ste. Javno parametrite koito iska ne mu gi serviram kakto trjabva. Priemam predlozhenija i idei. Mersi predvaritelno na vsichki otzovali se. Thanks a lot.
Отговор
в отговор на Veselina #2

кивай сега.

защо просто не използваш... има една библиотека, дето идва със SQL седмицата... SQL DB ли беше... абе ше я киваш, има я мисля в References... та начи, вътре има обекти за всичко - като почнеш от SQL Server group, и свършиш с Field на таблица - доста е удобно за работа с VB. за нема и толко време можеш да напишеш произволно нещо- направо не е за вярване. пробвай го, става страшно лесно. ако все пак си решила да използваш sp_indexes, кажи през какво го викаш - ADO ли?
Отговор
в отговор на Кромид #3

поправка - SQL - DMO

не е SQL - DB, SQL - DMO (или поне тва трябва да се съдържа в името на Reference)
Отговор
в отговор на Veselina #4

Umnica sam ....

V sastnost opravih se i mersi za ideite. Da zabravih da kazha che polzvam DAO 3,6 i si imam vrazka chrez ODBC za serevera. V sastnost sastestvuva i eda druga store procedure v SQLa sp_helpindex [@objname =] 'name' deto na objject name si praskash imeto na tablicata i pej sarce, i si ti dava vsichko kakvoto ti trjabva. Mersi vse pak.
Отговор
в отговор на Veselina #5

моля, моля... :)

ако ти трябва нещо за тоя сървър, обаждай, доста съм си чупил главата с него
Отговор
в отговор на Veselina #6

мi stom si ja chupil ...

davaj sega pak da te pitam nesto. Namerih go v reference. Naistina ima vsichko sto dusha ti iska. Obache pak iztapjah, znaechi da mu se nevidi kak da si ukazha DB? S DAO i Ado e jasno, opendatabase, connect i t.n. Tam vidjah edno getdatatypebyname ama pak se sardi. Ta vaprosa mi kak da stane tova? Sega otivam pak da cheta. Mersi predvaritelno.
Отговор
в отговор на Veselina #7

начи:

ако си разбрала как да изпълниш метода Connect на SQLServer обекта, оттам е лесно. той, като гледам хелпа, има collection Databases, referenc-ваш я по име и тва е. ако имаш проблем с connecta, пиши.
Отговор
в отговор на Кромид #8

начи:

Ami probvah be i ne ste i ne ste. Chudja se veche kakvo da mu prasna. Pravja si connecta prez ODBC. ne sto ne mu harsva
Отговор
в отговор на Veselina #9

чакай, чакай

какво ODBC... нали за SQL-DMO-то стаа въпрос? там от такива неща няма нужда. начи имаш следната последователност от обекти application.SQLServers(името_на_твоя_сървър) - тва ти връща SQLServer обект. той има пропъртита Login и Password и метод Connect. като изпълниш Connect-а, използваш SQLServer.Databases(името_на_твойта_база) - това връща Database обект. ако имаш проблеми нататъка, пиши. (а също ако имаш проблеми и с това по-горе де :))
Отговор
в отговор на Veselina #10

чакай, чакай

ok. ste probvam tova. Ami njamam si help ili nesto ot sorta na "how to" i naluchkvam zdravata. Mersi. Samo che maj utre ste go macha, zastoto mi pisna ot tova chudo dnes. Znachi do utre. Pak mersi
Отговор
в отговор на Veselina #11

чакай, чакай

имай предвид, че библиотеката става песен, след като се connect-неш - направо е фърхъ - така че не се отказвай. айде. ако имаш ядове - пиши.
Отговор
в отговор на Veselina #12

оооооопс!

май те изработих - доколкото виждам, не става през SQLServers collection-a. далаверката била така май: Dim Server as New SQLDMO.SQLServer with Server .name=името_на_твоя_сървър 'само тука не съм сигурен .login=твоя_UserName .password=твоя_Password .Connect end with sorry, че не ти ги казвам нещата със 100% сигурност, обаче нямам в момента нито SQL Server, нито SQL-DMO, и карам само на сух хелп и спомени :)
Отговор
в отговор на Veselina #13

чакай, чакай

Utre ste go trepam. Obache sega se sestam i nesto drugo ima li njakakva funkcija deto da mi vurne da kazhem sql serverite v mrezhata. Pitam stoto ideja si njamam ot tova SQL DMO a i help si njamam. Taka che maj ste prodalzhavam da si pitam. Mersi. i chao za sega.
Отговор
в отговор на Veselina #14

oooops

Tova mi izglezhda dosta dobre. Ste go probvam i ste ti kazha dali suhite help-ove varshat rabota. Ako ima nesto utre sam pak na linija.
Отговор
в отговор на Veselina #15

чакай, чакай

амиии, глей сега, то много-много тоя тип неща (дейта сървъри и въобще сървъри) не прават (и не би и трябвало) разлика между LAN и WAN - демек, като питаш за сървърите в мрежата, за коя мрежа - за мрежата или за МРЕЖАТА? има там една простотийка - SQLDMO.Application требе да има ServerGroups collection, който съдържа ServerGroup item-и. ServerGroup обекта има от своя страна RegisteredServers collection и отново ServerGroups collection - и ето ти едно рекурсивно дръвче, като на всяко ниво може да имаш както групи сървъри, така и сървъри. цялата тая работа обаче е малко фалшименто, понеже се базира на информация, предварително записана (на практика от теб) в Registry-то. няма никакви магически обръщения по мрежата да пита е ли има сървър тук и там, е ли няма. то и не е възможно де, щото като е загасен някой сървър (или директно машината) - кой, кой ще му каже? има да си върви по света и да си подсвирква даже... и т.н. и т.н.
Отговор
в отговор на Veselina #16

Da si poblaskame glavite ....

Znachi sledvajki tova deto me posavetva i saglasno umnite glavi ot Microsoft imam slednoto: dim MyServer as SQLDMO.SQLServer Set MyServer = CreateObject("SQLDMO.SQLServer") With MyServer .Name = SQLServerName .Login = "sa" .Password = "" .Connect - i tuka garmi majka plache End With Set SQLDB = MyServer.Databases(SQlDBName) Greshkata deto mi dava e slednata: ODBC SQL Server Driver/ TCP/IP sockets. Proverih si vsichko mi izglezhda v red. Njakakva ideja? Mersi
Отговор
в отговор на Veselina #17

хм

на кой ред ти дава грешката? (и защо използваш Set MyServer = CreateObject("SQLDMO.SQLServer" вместо Set MyServer=New SQLDMO.SQLServer или направо Dim MyServer as new SQLDMO.SQLServer ) не вярвам проблема да е там, но е възможно да изникне по-рано, понякога даже на компилация. +тва е по-бързо и е гарантирано че ще работи и с японската (примерно) версия на същия компонент (SQLDMO-то). :). Въобще, избягва CreateObject, той е бавен, но затова пък несигурен, пък и ако направиш правописна грешка, я откриваш run-time. на тоя компютър има ли инсталирана клиентската част на MS SQL Server-a? (абе, конзолата там, с дръвчето вляво и т.н.)?
Отговор
в отговор на Кромид #18

хм

пробвай следното нещо .Connect MySQLServerName,"sa","" и разкарай трите реда с името, usera и паролата.
Отговор
в отговор на Кромид #19

хм

Estestveno che ja imam instalirana. Razkarah go CreateObject predi dosta vreme. Nesto ne mu haresva s ODBC to. Pone takava greshka mi dava za TCP/IP Sockets. Ne smjatam che e v code. Po skoro e njakade v protokolite. Ste se rovja oste. No inache vsjaka ideja i info e dobre doshla.
Отговор
в отговор на Veselina #20

хм

пробва ли другия вариант на connect-а?
Отговор