Добрый вечер! Возможно ли в качестве баз данных на сервере использовать Access? И какие минусы есть, сильно хуже MySQL?
1) Платный; 2) Работает только под вендой (95% серверов, с которыми столкнетесь, работают на линупсе); 3) Нахрена? 4) ХЗ, есть ли для него драйвер пхпшный.
давно не смотрел на мускель - он случаем не обзавелся связями в бесплатной версии ? помню когда выбирали постгришку или мускель - выбрали постгришку ток изза этого .. по теме - на прямую php и access не дружат - они дружат только через odbc драйвера .. и не всегда корректно - охх я с этой связкой и надрючился.
О_о видимо очень давно. 1) MySql априори бесплатен. Коммерческая лицензия сделана только для не-GPL конечных продуктов; 2) Под связями подразумеваются отношения таблиц? Разумеется они есть и очень очень давно; 3) MySQL даже с транзакциями дружит; 4) Те же Фейсбук и Вконтактик работают на MySQL.
панятн =) ну я года3 назад пробовал таблицы связать - не вышло .. и тогда помойму на постгришку ушли. и потом уже както не имел с ним дела =)
это чтото типа такого CONSTRAINT "RAYONOSNADRES" FOREIGN KEY ("KRN") REFERENCES "DOGOVORA"."RAYON" ("KRN") MATCH SIMPLE ON UPDATE CASCADE ON DELETE NO ACTION
Форейн кеи есть вроде, а связей нет. Но есть вьюхи, но это не то. Но есть триггеры. Склепать можно. Но это не то
о если вдруг понадобится нашел свои опыты =) Код (Text): $inputfile=file; $kolvo=0; $odbc_connect=odbc_connect("DRIVER={Microsoft Access Driver (*.mdb)}; DBQ=C:\temp\\".$inputfile.".MDB", "", "") or die(odbc_errormsg("нет коннекта к ODBC")); $odbc_tables = odbc_tables($odbc_connect); $tables=array(); while ( odbc_fetch_row($odbc_tables)) { if (odbc_result($odbc_tables,"TABLE_TYPE")=="TABLE"){ // echo odbc_result($odbc_tables,"TABLE_NAME"); // $outval = odbc_columns($odbc_connect,$inputfile,"",odbc_result($odbc_tables,"TABLE_NAME"),"%")or die(odbc_errormsg()); $kolvo++; } } дальше весь текст копировать не могу - там немного корпоративного =) но куски вот $sql = "select * from \"table\";"; $query = odbc_exec($odbc_connect,$sql) or die(odbc_errormsg()) ; $query22=odbc_result ($query,1); // echo odbc_result($odbc_tables,"TABLE_NAME")."-".$query22."<br>"; чего я там делал .. я уже не помню =) толи вытаскивал все столбцы и длинну полей ( это я не копировал сюда) толи еше че делал .. много воды утекло =)
есть все это в MySQL Ключи вроде есть? О_о Что с тобой, Игорь Батькович? Что значит вроде? Они там на деле есть. И связи по ключам, соответственно строятся. Попытаешься, к примеру выпилить таблицу-родителя, мускуль вернет ошибку, мол сначала выпили детей, убийца, не оставляй сиротами. И каскадные операции тоже есть. Добавлено спустя 51 секунду: Во, пример вышеуказанного кода, но уже с мускуля: Код (Text): FOREIGN KEY (tech_name) REFERENCES bricks(tech_name) ON UPDATE CASCADE ON DELETE RESTRICT
это не связи а наебалово =( я за связь без брака а то ошибка это не метод. один хер надо руками контролить. то ли дело было бы круто ежели он сам все значения менял на нули или там че. вот это была б крутая связь. короче я не использовал никогда форейн кеи, ибо толку от них не осознал еще.
все настраивается. каскадирование же. Поменял значение, оно автоматом пробросилось во все дочерние таблицы. Снес запись, автоматически снес все связанные с ней записи в дочерних и тд. Плюс на диаграмме отношений сразу видно кто с чем куда и как. Я так вообще без форейнов не работаю никогда. Смысл руками что-то где-то дублировать и следить за связностью, если можно доверить это базе?
вот это дааа... кто такое говорит, а как же целостность БД? неужто ручками - проверками??? Добавлено спустя 29 секунд: еще скажи что ты транзакции не юзаешь Добавлено спустя 1 минуту 25 секунд: нет стоп, у тебя ж там ваще не апач, так может ты и не php и не mysql вообще ? =)