Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Вниз

Как работать с файлом БД mdf   Найти похожие ветки 

 
Dimich1978   (2005-01-11 09:07) [0]

Понимаю что через ADO , но что пошагово делать незнаю, плиз распишите что да как?
В инете сколько не искал ничего не добыл. Все только для mdb, но с ним я уже работал, а вот с MDF первый раз.
Заранее благодарен.


 
Sens ©   (2005-01-11 09:20) [1]

Создать базу (mdb)
На форму:
TADOConnection

TADOConnection.ConnectionString:= ...(тыкаем кнопу и выбираем базу).

TADOConnection.LoginPrompt:=False   (чтобы при подключении пароль не спрашивала)

TADOConnection.Connected:=True  (если получилось - к базе подключились)!

Далее На форму:
TADODataSet
TADODataSet.Connection:=    (Имя твоего TADOConnection)
TADODataSet.CommandText:=   (Создаем запрос. Тыкай кнопу, там разберешься)
TADODataSet.Active:=True (если установилось - работает)

Дальше, как обычно
TDataSource и так далее.

Пиши на мыло - вышлю пример.


 
ЮЮ ©   (2005-01-11 09:22) [2]

Работай не с файлом, а с сервером MS SQL - а он то уж знает, как работать с mdf


 
Fay ©   (2005-01-11 09:32) [3]

2 ЮЮ ©   (11.01.05 09:22) [2]
Самое интересное, что автор с mdf тоже ведь не "напрямую" работал, но нп мысли ни на какие это не натолкнуло 8)

З.Ы.
А ведь сколько бабла можно спасти, не тратя денег на Delphi, а "работая с" pas-файлами 8)


 
ЮЮ ©   (2005-01-11 09:38) [4]

>Самое интересное, что автор с mdf тоже ведь не "напрямую" работал

Ну почему же, практически "напрямую", т.к. в ConnectionString присутствовало "MySuperBase.mdb". И тут хочется "MySuperЗгзукBase.mdf", но не получается :)


 
Johnmen ©   (2005-01-11 09:45) [5]

>ЮЮ ©   (11.01.05 09:38) [4]

А почему ты думаешь, что не присутствует?


 
ЮЮ ©   (2005-01-11 09:52) [6]

Потому, что сам формирую ConnectionString такой процедурой, где среди параметров нет имени файла :

function BuildConnectionStringForMSSQL(
 const AServer, ADatabase, AUser, APassword: string
): string;
begin
 Result :=
   "Provider=SQLOLEDB.1;Persist Security Info=False;" +
   "User ID=" + AUser + ";" +
   "Password=" + APassword + ";" +
   "Initial Catalog=" + ADatabase + ";" +
   "Data Source=" + AServer;
end;


 
Johnmen ©   (2005-01-11 09:59) [7]

Но есть имя каталога. И по сути это то же самое...


 
ЮЮ ©   (2005-01-11 10:09) [8]

"Initial Catalog=" + ADatabase
Имя БД и имя файла БД? А то что в одном файле находится несколько БД не смущает?


 
Fay ©   (2005-01-11 10:10) [9]

2 Johnmen ©   (11.01.05 09:59) [7]
Это не "имя каталога!", как может показаться. Имя базы можно задать  3-мя параметрами, и Initial Catalog - один из них.


 
sniknik ©   (2005-01-11 11:02) [10]

из BOL пример(почти), все разное
CREATE DATABASE Sales
ON (
 NAME=Sales_dat,
 FILENAME="c:\sdat.mdf",
 SIZE=10,
 MAXSIZE=50,
 FILEGROWTH=5)
LOG ON (
 NAME="Sales_log",
 FILENAME="c:\slog.ldf",
 SIZE=5MB,
 MAXSIZE=25MB,
 FILEGROWTH=5MB)


 
Fay ©   (2005-01-11 11:04) [11]

2 sniknik ©   (11.01.05 11:02) [10]
4-й способ 8)


 
sniknik ©   (2005-01-11 11:13) [12]

Fay ©   (11.01.05 11:04) [11]
способ чего? задания каталога? тогда это неправильно это создание с разными именами
вот четвертый способ
подключаемся к любой базе (к мастеру например)
после
USE Sales
выбираем другую (нашу)
SELECT * FROM Table1
и запрос к таблице уже этой базы (еще можно через линки к базе ровсеты но это будет временное переключение)


 
ЮЮ ©   (2005-01-12 04:20) [13]

>sniknik ©   (11.01.05 11:13) [12]

Так все-таки
 USE Sales
но никак не
 USE "c:\sdat.mdf"

И вообще, какая польза от знания, что физически файл называется sdat.mdf и лежит в c:\ сервера? Не разшаривать же "c:\sdat.mdf" для работы с ним :) Да и нет для mdf простенькой библитечки типа gds32.dll, дабы обойтись без сервера БД


 
Dimich1978   (2005-01-12 10:48) [14]

у меня есть базы уже заполненные мне надо подрубится к ним и выполнить запрос.


 
ЮЮ ©   (2005-01-12 10:51) [15]

А сервер MS SQL у тебя есть?


 
Anatoly Podgoretsky ©   (2005-01-12 11:12) [16]

А зачем ему, если он собирается работать напрямую с файлом?


 
Dimich1978   (2005-01-12 11:22) [17]

Сервер имеется, но он дл ядругих нужд.
Вообщем имеется ИСА сервер (прокси сервер) складывает он все логи в базы MSDE Database, то бишь mdf. Складывает аккуратно в папку которую я указал, по дням. Так вот я хочу эти базы запросами раскрутить на выдачу отчетов которых нет(предустановленных) в отчетах самой ИСЫ сервера.
Заранее спасибо.


 
Fay ©   (2005-01-12 12:26) [18]

Это развод 8)


 
ЮЮ ©   (2005-01-12 12:51) [19]

>логи в базы MSDE Database

MSDE и есть сервер, пусть и Developer Edition. Поставь Enterprise Manager от MS SQL 2000 и поковыряйся в БД.


 
MOA ©   (2005-01-12 13:01) [20]

Desktop Edition
(2ЮЮ - Извините за поправку - это просто чтобы нечаянно не запутать человека ;))


 
Fay ©   (2005-01-12 13:24) [21]

2 MOA ©   (12.01.05 13:01) [20]
Desktop Engine


 
MOA ©   (2005-01-12 13:34) [22]

2Fay
Ну да, наврал и я ;)


 
Dimich1978   (2005-01-14 14:01) [23]

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


 
sniknik ©   (2005-01-14 14:17) [24]

> Я так понимаю что этот вопрос плохо освешен, давайте его осветим!!!
какое глубокое заблуждение!!! "освещение" в данном контексте выльется в потугах включить фонарик под солнцем(так много об этом писано).



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2005.02.13;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.5 MB
Время: 0.032 c
3-1105958921
Shizuku
2005-01-17 13:48
2005.02.13
Вернуть результат из вычисляемого поля запроса


8-1099143128
colonel
2004-10-30 17:32
2005.02.13
Не работает прога под win2k и XP


1-1106918647
Drakosha
2005-01-28 16:24
2005.02.13
Помогите выявить повторения....


9-1099913036
Robot
2004-11-08 14:23
2005.02.13
Война роботов


3-1105636223
tytus
2005-01-13 20:10
2005.02.13
Как лучше удалить записи из БД?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский