|
12 Кб. |
|
| Экспресс метод вникания в MS SQL
=================================
Имею крохотную базу mdb
нужно такую же создать на сервере mssql и подрубаться к ней из VB6
===================================
Располагаю двумя компами
На одном буду клиента терзать
На другом "установил" MS SQL 2005 Express
Установил, но еще не прикасался - не администрил .... така кака пока я нуль....
Как пошустрому въехать??? | |
|
| |
|
49 Кб. |
|
| Вот вроде как всё пока в норме | |
|
| |
|
|
|
| Создаю таблицы напару с SQL менеджером
Вопрос как поле типа счётчик создать??
======================================
Пока создал его как int - буду в программе его наращивать......
Создал базу и таблицы , нажал сохранить усё
Интересно куда это всё сохраняется и где вопрос о пароле???
Где эта база лежит?
Как к ней коннектиця?
Какой щас там пароль?
Какой логин?
Как сменить пароль? и логин?
Как доступ к таблицам производить через хранимые процедуры дуры дуры - кто они такие сикие??
| |
|
| |
|
|
|
|
Вопрос как поле типа счётчик создать??
|
В свойствах столбца выбрать спецификацию идентифицирующего столбца - поставить да. Там же можно задать начальное значение и приращение
Интересно куда это всё сохраняется и где вопрос о пароле???
|
А он у тебю и не спорсит пароль при создании базы. Если при открытии студии ты выбрал проверку подлинности Windows, то пароль она(студия) вообще не спросит
Наверняка здесь C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data
Смотря откуда ты хотишь приконектиться
Какой щас там пароль?
Какой логин?
Как сменить пароль? и логин?
|
Зависит от типа прверки подлинности.
Как доступ к таблицам производить через хранимые процедуры
|
В базе в папке программирование есть папка хранимые процедуры. Там , щелкая правой клавишей мыша выбираешь Создать хранимую процедуру и пишешь что-то вроде
CREATE PROCEDURE _spCountry
AS
SELECT DISTINCT IdCountry,CountryName FROM TblKlassCity
RETURN
|
процедуры дуры дуры - кто они такие сикие??
|
Лучше почитай об этом в умных книжках. Больше пользы будет, чем от объяснений на форуме.
В двух словах - классная вещь, позволяющая выполнять подряд несколько различных запросов ( Select Insert delete ) а так же допускающая циклы, условия и много всякой полезной хрени | |
|
| |
|
|
|
|
| Есть два способа прверки подлинности - Windows идентификация и SQLSERVER идентификация.
В первом случае проверка осуществляется на основе доменного имени пользователя.
Во втором создается пользователь и ему присваивается логи-пароль. А потом приписываются пользователю роли и права доспупа к базе и любым объектам базы.
В твоем случае ( я так понимаю ты только начинаешь изучать все это ) используй Windows идентификацию и не заморачивайся пока на безопасности.
Если хочешь разавать разным пользователям различные права- сделай таблицу в базе данных с идентификацией и аутентификацией.
ЗЫ
Об этом лучше тоже почитать в умных книжках. Больше пользы будет. | |
|
| |
|
|
|
| Спасибо !!!
Понял так, что
1если пользователь стучиться в базу, но на компе он не зарегистрирован - ему Windows откажет в доступе
2 если он до компа допущен - проверяется разрешение на уровне SQL - чё ему можно а чё нильзя и ваще имеется ли таковой зарегистрированный среди пользователей MS SQL.
Если имеется -каковы его тут права....
===========================================================
Знаешь - у мну как раз из за того, что ,база будет лежать на серваке из за этого безопасность во главе угла
сервак видимо потребуется для большей безопасности - личный, ну в смысле не предоставленный сторонней фирмой, потому видимо достаточна будет проверка входа в систему, где каждый раз добавлять нового пользователя, с его правом входа.
А вот по поводу таблиц сервера тут видимо нуна всё разрешить - раз уж попал - чтение запись , но не изменение структуры - как то так........... | |
|
| |
|
|
|
| При использовании проверки подлинности SQLSERVER для сторонней организации рискуешь нарваться на противодействие местного сисадмина при внедрении. Ты ему подкишешь кучу работы при регистрации каждого нового пользователя.
Используй лучше проверку подлинности windows и добавь в базу систему таблиц для авторизации и аутентификации. Это сделает твою программу более простой в управлении, и не менее надежной.
ЗЫ Лучше вообще не пользоваться проверкой подлинности SQLSERVER при разработке приложений для сторонней организации, если это специально не было оговорено. Но это ИМХО. Сужу по своей конторе. | |
|
| |
|
|
|
| У меня две базы в программе
одна локальная на каждом (компутере - станции) и одна для всех - это вот как раз будет база MS SQL.
Локальная - имеет пару таблиц аутерификации входящего и права его доступа к формам программы.
На локальной все сведения хранятся о том чего делается на конкретном месте и эти сведения никого кроме местных - не интересуют.
А вот в серверную часть туда заносятся данные , которые должны быть известны всем пользователям, потому как этими данными оперируют все. | |
|
| |
|
|
|
| Ну ты и намутил
Тут вполне можно обойтись одной базой на SQLSERVER. | |
|
| |
|
|
|
|
В основном вся работа ведётся в локальной базе...
И только данные о клиентах хранятся в доступной для всех базе на сервере.
==================================================================
База по твоей наводке найдена
там два файла
baza.mdf
baza_log.ldf
и куча других баз - учебных, нафига оне мне созданы? И главное не спросив меня - оно мне нуна
| |
|
| |
|
|
|
| Пльзователей будет много, но у всех права только на чтение и запись данных | |
|
| |
|
|
|
|
и куча других баз - учебных, нафига оне мне созданы?
|
Только удалять их не вздумай. Это системные базы, необходимые для нормально работы сервера.
В основном вся работа ведётся в локальной базе...
И только данные о клиентах хранятся в доступной для всех базе на сервере.
|
В первый раз ты говорил противоположное. А как ты собираешься состыковывать локальные базы между собой, или они полностью автономны и не имеют ничего общего ( типа остатки на складах и прочее ) ?
И в любом разе тем более не понятно зачем тебе общая база. если она используется только для хранения сведений о пользователях. | |
|
| |
|
|
|
| В точку попал - остатки на складе
= щас раскажу:
.............................
Магазины в них компы считают скока чего поступило, скока чего продано, скока чего осьталось. Программа - типа рабочего места кассира оперирует этими местными данными.
Но иногда приходит в гости клиент, у которого в зависимости от покупок - растут бонусы...
И не важно в каком из магазинов он делает покупки - вот на этот случай и треба шоба было хранилище - доступное для всех магазинов.
Сведения о клиенте и его покупках считываем - говорим:
Состояние вашего счёта 100 бонусов
Он говорит - я пожалуй 50 бонусов потрачу прям щас.
И ведь - тратит .........
Потом идёт в другой магазин сети и тратит оставшееся, а зайдя в третий просто приобретает товар - чем наращивает свой бонус.
Такая вот систематиятия...или матьеё
Потому получается в основном нужна локальная база для учёта товара, а база для хранения сведений о клиентуре сам понимаешь - нужна иногда, но типа для всех и что ба доступна была всем для считывания и записи информации.
Удалаять из ней и то фиг её знает нуна будет или даже и не нуно тут скорее второе - не нуно....
Для истории клиентов...
И структура её, видимо, меняться не будет никада.
так что вот надо как то организовать доступ к данным постепенно появляющимся точкам-магазинам, конечно если такое будет происходить и мне для - хрен знает мне зачем это может понадобиться....
Если всё на уровне Windows serwers будет отслеживаться- права доступа, имею ввиду. | |
|
| |
|
|
|
| Если товарные базы магазинов никак не связаны друг с другом - тогда этот подход нормальный, но если руководство сети захочет иметь базу, контролирующую общие остатки-приход-расход всех магазинов сети, то можешь заготавливать вазелин для вступления в сексуальные отношения с репликациями всех этих баз. | |
|
| |
|
|
|
| Если нет выделенного канала связи с склсервером для проверки бонусов, то с репликациями тебе все-равно придется поиметь дело | |
|
| |
|
|
|
|
так что вот надо как то организовать доступ к данным постепенно появляющимся точкам-магазинам
|
Используй проверку подлинности Windows.
Добавлять новые точки можно просто создав таблицы для авторизации-аутентификации.
Добавить новые магазины тогда сможет любая секретарша из головного офиса, не имеющая никаких навыков администрирования. просто в соответствующей форме добавляет нового пользователя (магазин) и назначает ему нужную роль. | |
|
| |
|
|
|
| Кстати нашёл где при открытии студио выбор Autherification
точно - умну стоит - Windows Autherification,
А если теперь изменить на SQL Autherification - тада и спрашивают, а парол а логин
Но если при первом запуске не задавал, то теперь видимо и не стоит уже, а то не пустят | |
|
| |
|
|
|
|
можешь заготавливать вазелин
|
Я заготовил
В виде сливания остатков в файл и передачи в центр
А так же чтоба на местах строчили заявки в центр в виде файлов... | |
|
| |
|
|
|
| Понял - значит нужен какой то выделеный канал связи с сервером, то есть чтото типа IP адреса сервера в инете. | |
|
| |
|
|
|
| Вот щас тыкаюсь носом в блюдце - точнее рядом с блюдцем...
2Q - комп в сети
2Q\SQLEXPRESS - сервер
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
cn.Provider = "SQLOLEDB"
cn.ConnectionString = _
"DATABASE = \\2Q\Data\CLIENT.mdf;SERVER = 2Q\SQLEXPRESS; User ID=sa;Password="
|
Получаю недопустимый атрибут строки соединения.... | |
|
| |
|
|
|
| пробываем иначе
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
With cn
.Provider = "SQLOLEDB"
.CommandTimeout = 0
.Properties("User Id") = "sa"
.Properties("Password") = ""
.Properties("Data Source") = "\\2Q\SQLEXPRESS\2Q\Data\CLIENT.mdf"
.Properties("Persist Security Info") = True
.Open
.DefaultDatabase = "mg"
End With
|
Сервер не существует или доступ запрещён
Уже лучше | |
|
| |
|
78 Кб. |
|
| Где то чё та не то | |
|
| |
|
49 Кб. |
|
| И потом бах | |
|
| |
|
|
|
| А с SQL Auterificaciey и из менеджера не пускает
Создал нового пользователя дал ему права администратора
без пароля входа
а где ему задать Аутерификацию - что бы SQL она была - чёта не найду в менеджере........... | |
|
| |
|
|
|
|
Dim strSQL As String
Dim lngRecsAff As Long
Dim cn As ADODB.Connection
Set cn = New ADODB.Connection
With cn
.Provider = "SQLOLEDB"
.CommandTimeout = 0
.Properties("User Id") = "vvv"
.Properties("Password") = ""
.Properties("Data Source") = "2-Q\SQLEXPRESS"
' .Properties("Initial Catalog") = "2-Q\DATA"
.Properties("Persist Security Info") = True
.Open
.DefaultDatabase = "CLIENT"
End With
|
Никак не подрублюсь | |
|
| |
|
19 Кб. |
|
| Вот такая фигня
Не задано (не определено) свойство Login | |
|
| |
|
|
|
| Как настроить этот сервер 2005 , что бы он к себе подпускал???
И если его переустановить - как сохранить уже созданную базу, что бы её потом интегрировать в сервер
http://needhelp-1c.narod.ru/sql2005_1c.htm
может нужно при установке выбирать смешанный режим проверки подлинности???
и зачем советуют
Windows Installer 3.1 | |
|
| |
|
|
|
| По поводу твоих картинок. У тебя в п.1 стоит пустая строка. Ты не ввел имя сервера. Потому он и не может подключиться. Выбери в комбобоксе имя своего сервера, а если в комбобоксе его нет, то введи вручную 2Q/SQLEXPRESS (я так понял это имя твоего сервера)
По поводу строк подключения - ты конектишься из VB6, а я не знаю синтаксиса соединения в VB6. В .Net строка подключения выглядит примерно так
Dim conn1 As New SqlConnectionStringBuilder() - это встроенный класс, собирающий строку подключения
conn1.DataSource = "I-SERVER-TWO" - имя сервера
conn1.InitialCatalog = "MogJilDom" - имя базы
conn1.IntegratedSecurity = True | |
|
| |
|
|
|
| Судя по новой разработке - ты нашел новую работу. Тебя можно с этим поздравить? | |
|
| |
|
|
|
|
|
|
|
а где ему задать Аутерификацию - что бы SQL она была - чёта не найду в менеджере...........
|
В папке безопасность | |
|
| |
|
|
|
| В папку security я лазил всё обшарил - у него стоит аутер - виндой
или ..........
Я ваще то снёс сервак - щас поновой устанавливаю...........
Согласно
http://needhelp-1c.narod.ru/sql2005_1c.htm
===============================================
Как говорится - первый блин на брюки..................
-одну галочку упустил и понеслось..........
Скрыть дополнительные параметры конфигурациииииии
и всё от меня скрылось и ни в чём я участия не принимал - , а сама оно такое там накуролесило - поди разберись.
теперь вот пробую переустановку - ды всё по пунктам, вникая.....
Правда, не знай ещё чё получится............ | |
|
| |
|
1 Кб. |
|
| Установилося | |
|
| |
|
43 Кб. |
|
| Задал контактную зону | |
|
| |
|
|
|
| ПриАТТАЧил менеджером - свою прежнюю базу | |
|
| |
|
41 Кб. |
|
| На том компе, который с установленным SQL - файл .UDL коннектица
А вот по сети не хочет | |
|
| |
|
|
|
| Программа на том компе работает - коннектица и записи в таблицу добавляет, а вот по сети - проблемммм
и Вот ещё лишняя строка -- ' .Properties("Initial Catalog") = .........
А ведь она для чегото нуна??? | |
|
| |
|
|
|
| А вообще для VB6 - строка подключения получилась - вот такой
Set cn = New ADODB.Connection
With cn
.Provider = "SQLOLEDB"
.CommandTimeout = 0
.Properties("User Id") = "sa"
.Properties("Password") = "пароля"
.Properties("Data Source") = "2-Q\SQLEXPRESS"
.Properties("Persist Security Info") = True
.Open
.DefaultDatabase = "CLIENT"
End With
|
Таймаут - видимо нужно увеличить на десяток секунд........ | |
|
| |
|
|
|
|
Таймаут - видимо нужно увеличить на десяток секунд........
|
я бы убрал эту строчку вааще | |
|
| |
|
|
|
|
Программа на том компе работает - коннектица и записи в таблицу добавляет, а вот по сети - проблемммм
|
Так ведь ты прописываешь ему строку подключения на локальной машине. А сервера там нет. Измени строку подключения - укажи правильный путь к склсерверу.
и Вот ещё лишняя строка -- ' .Properties("Initial Catalog") =
|
=Имя базы | |
|
| |
|
|
|
| Пробываю
А вот ведь имя базы
.DefaultDatabase = "CLIENT"
|
файл .UDL по сети не хочет коннектиця | |
|
| |
|
|
|
| Нет - какие то настройки на сервере нужно делать для разрешения доступа............. | |
|
| |
|
|
|
| Настройки действительно надо делать. Но сам я этого никогда не делал, потому подсказать , к сожалению, ничего не могу.
Если разберешься как делать - расскажи.. Буду признателен. | |
|
| |
|
|
|
|
| ' при использовании SQL Native Client
'строка провайдера выглядит инече
Set cn = New ADODB.Connection
With cn
.Provider = "SQLNCLI;DataTypeCompatibility=80"
.CommandTimeout = 0
.Properties("User Id") = "sa"
.Properties("Password") = "252525"
.Properties("Data Source") = "2-Q\SQLEXPRESS"
.Properties("Initial File Name") = "D:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\Data\CLIENT.mdf"
.Properties("Persist Security Info") = True
.Open
End With
| http://www.sqlbooks.ru/readarticle.aspx?part=02&file=sql200511 | |
|
| |
|
|
|
| Неужто у нас на форуме нихто не настраивал SQL ............
Чё та окромя тебя никто не откликнулся на просьбу помочь | |
|
| |
|
|
|
| Уже умными книгами и утилитами - всё перепоизменял - соннекта не надыбал | |
|
| |
|
|
|
| час,
ты хоть смотрел который час
иль не смотрел на календарь
субботний вечер!
мне тя жаль. | |
|
| |
|
|
|
| И мне ся жаль,
а чё делать.........................
Хочется связи, а её нет................ | |
|
| |
|
|
|
| при связях - використовуйте гумові нацюцюрники!!!!! | |
|
| |
|
|
|
|
используйте резиновые ......наконешники
| |
|
| |
|
|
|
| http://www.kvvmku.ru/forum/printview.php?t=815&start=50 | |
|
| |
|
|
|
| дык то - для туристов в Украину
================================
А я вчерась сало в трёхлитровую банку засолил - через дня 4 пробывать буду
шо мне в Украину ехать???
И на резину тратиться | |
|
| |
|
|
|
| а зачем сало солить его солят для длительного хранения, а малосольное сало - это не малосольный огурец оно вкуса радикально!!!! не меняет - ну вкуснее конечно.
1. сало небольшими кусочками отварить (10 мин) в соленом кипятке (0,5кг. сол на 4л, лавр, перец горошек), да в банку с этим же рассолом и зубками чеснока - через 2-4 дня - да под водочку. (можно и в банки закатывать)
2. сало с чесноком перекрутить + соль перец по вкусу - ВАХ - есть мона сразу!!!! | |
|
| |
|
|
|
|
| Сало - оно конечно хорошо, но какие насройки ещё произвести, чтобы получить доступ к данным сервера???? | |
|
| |
|
|
|
| Нужна помощь знатоков SQL Server | |
|
| |
|
|
|
| У мну такая чуства - что это из за Windows7 - компа пытающегося установить соединение или что на всех компах клиента надо разворачивать прежде чем они смогут друг друга слышать | |
|
| |
|
|
|
| Стандартные параметры настройки сервера не допускают удалённого подключения.
Это говорит о том, что надо найти етот параметр и изменить его значение , но что это за парметр????? | |
|
| |
|
|
|
| БЛ@@@@@@@, час, ты гуглом умеешь пользоваться?
http://www.google.com.by/search?hl=ru&source=hp&q=%D0%9D%D0%B0%D1%81%D1%82%D1%80%D0%BE%D0%B9%D0%BA%D0%B0+MSSQLSERVER+2005+%D0%B4%D0%BB%D1%8F+%D1%83%D0%B4%D0%B0%D0%BB%D0%B5%D0%BD%D0%BD%D0%BE%D0%B3%D0%BE+%D0%BF%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D1%8F&btnG=%D0%9F%D0%BE%D0%B8%D1%81%D0%BA+%D0%B2+Google&meta=lr%3Dlang_ru&aq=f&oq=
|
Вот первые 2 ссылки
http://support.microsoft.com/kb/914277/ru - там подробно описано
http://ivinsky.livejournal.com/2563.html - там тоже описано | |
|
| |
|
|
|
|
час, ты гуглом умеешь пользоваться
|
нет | |
|
| |
|
|
|
| Я это читал....
и всё это проделал
за исключением :
Создайте исключение в брандмауэре Windows или отключите его
Для порта 1433. (SQL Server 2008)
и это сделал на всяк случай - не помогло | |
|
| |
|
|
|
| Это какое то наваждениё
ничё не помогает...........
http://support.microsoft.com/kb/914277 | |
|
| |