imho.ws
IMHO.WS  

Вернуться   IMHO.WS > Веб-мастеру > Веб-программирование
Опции темы
Старый 23.12.2002, 00:43     # 1
John37x
Guest
 
Сообщения: n/a

MySQL

Начал изучать MySQL!Я установил mysql-max-3.23.54-win вместе с mysqlgui-win32-static-1.7.5-2.Объясните как создать елементарную БД и работать с ней по локалке.
 
Старый 23.12.2002, 01:39     # 2
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 29.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
John37x
Создание базы
PHP код:
<?
$host
="localhost";
$user="root";
$pass="pass";
$link=mysql_connect($host$user$pass);
$result mysql_query("CREATE DATABASE test
echo $result;
?>
Создание таблицы в базе
PHP код:
<?
$host
="localhost";
$user"root";
$pass="pass
$database="
test";
mysql_connect ($host , $user , $pass);
mysql_select_db($database);
$sql = 'CREATE TABLE `test` ( `name` TEXT, `height`VARCHAR(25), `rost` VARCHAR(25), `volosq` TEXT );';
mysql_query($sql);
?>
Достаем данные из Таблицы
PHP код:
<?php
$db_name
="test";
$table="test";
$host="localhost";    //хост
$user="root";
$pass="pass";
//законнектимся - получаем link-идентификатор или вывод номера и текста ошибки
//с последующим прерыванием работы скрипта (die())
$link=mysql_connect($host,$user,$pass) or die(mysql_errno($link).mysql_error($link));
//выбираем базу данных BOOKS, созданную нами ранее
$db=mysql_select_db($db_name,$link) or die(mysql_errno($link).mysql_error($link));
//выберем данные
$result=mysql_query("SELECT name FROM ".$table$link) or die(mysql_errno($link).mysql_error($link));
//сформируем заголовок таблицы результатов выборки
$th=explode("#","Name");
echo 
"<tr><th>",implode("</th><th>",$th),"</th></tr>";
//выведем результаты в HTML-документ
while($data=mysql_fetch_row($result)) {
    echo 
"<tr><td>"implode("</td><td>",$data), "</td></tr>";
}
//освободить выделенную под результат выборки память
mysql_free_result($result);
mysql_close($link);
?>
__________________
Lord Skill вне форума  
Старый 23.12.2002, 18:55     # 3
Aeon
::VIP::
 
Аватар для Aeon
 
Регистрация: 28.06.2002
Адрес: neverwhere
Сообщения: 1 166

Aeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собой
против того что сказал Lord Skill не возражаю, но должен дополнить... базовые операции (создание баз и таблиц) проще делать вручную чем через php... итак.

Код:
DROP TABLE IF EXISTS test;
// если менять базу ( а обычно во время дизайна базы менять приходится 
// несколько раз, то это выкинет уже существующую таблицу... правда надо 
// позаботится о том чтобы в базе ещё не было нужных данных на этот 
// момент... если данные есть, надо работать через запрос UPDATE TABLE ).
CREATE TABLE test (
  id int(4) unsigned NOT NULL auto_increment,
  name varchar(50) default NULL,
  height int(4) unsigned default NULL,
  weight int(4) unsigned default NULL,
  hair set('светлый','тёмный','рыжий') default NULL,
  PRIMARY KEY (id)
);
тут всё зависит от объема работы... я лично обычно просчитываю весь дизайн и структуру базы сначала в голове и записываю sql-запрос для создания базы в текст-файле, который сохраняю как struct.sql (например).

Теперь весь вопрос в том как этот файл скормить в mysql... и делается это до безобразия просто.

во первых, ложим файл на твой сервер ( если же всё локально то ничего не надо двигать. ).

во вторых идём в шелл (dos-окно на виндах, или телнет / ssh (предпочтительно) на сервер).

теперь вводим: mysql test < struct.sql (где test = имя базы).

всё. Ну, если на базу стоит пароль доступа то конечно нужно его проставить в запросе, и тогда это выглядит примерно так: mysql -u username -pPassword test < struct.sql, но в целом это всё.
кстати, обратите внимание на отсутвие пробела между -p и паролем - это не очепятка, так и должно быть.

Альтернативный вариант:
Если же нужно просто быстренько создать таблицу или что-то быстро пофиксить, то можно с файлами голову не морочить а просто ввести запрос прямо в шелле.

для этого: входим в mysql через шелл вышеуказанным способом (не указывая базы и sql-файла, правда). Получаем доступ. Пишем use test (где test, опять же, имя базы).

вводим любой sql-запрос, и никаких проблем
Aeon вне форума  
Старый 23.12.2002, 21:09     # 4
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 29.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
Aeon
А если ему нужно целую программу писать и потом ее распростронять? тогда же нужно чтоб install.php был!!!
__________________
Lord Skill вне форума  
Старый 23.12.2002, 21:31     # 5
Aeon
::VIP::
 
Аватар для Aeon
 
Регистрация: 28.06.2002
Адрес: neverwhere
Сообщения: 1 166

Aeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собой
Lord Skill

А тогда просто в install.php он делает fopen('struct.sql'); и зачитывает содержание файла в sql-запрос... и никаких проблем. Это один (из наверняка как минимум полудесятка) способов это сделать

хотя судя по его вопросу по моему он ещё не на том уровне где возникают проблемы распространения
Aeon вне форума  
Старый 23.12.2002, 22:05     # 6
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 29.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
Aeon
я и не подумал :D))
__________________
Lord Skill вне форума  
Старый 23.12.2002, 23:05     # 7
John37x
Guest
 
Сообщения: n/a

Это всё замечательно!Но по моему со всем этим нужно работать под UNIX А что делать если у меня Винда XP? Куда всё ето писать? Я так понимаю что где то в рамках клиентской программы?
 
Старый 23.12.2002, 23:12     # 8
Aeon
::VIP::
 
Аватар для Aeon
 
Регистрация: 28.06.2002
Адрес: neverwhere
Сообщения: 1 166

Aeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собой
я уже сказал...
Цитата:
Как писал Aeon
во вторых идём в шелл (dos-окно на виндах, или телнет / ssh (предпочтительно) на сервер).
Aeon вне форума  
Старый 30.12.2002, 20:43     # 9
[Hell`s]-JD_Johnatan
Guest
 
Сообщения: n/a

A ne leg4e li ispolzovat MySQLAdmin??? ))))))))
 
Старый 30.12.2002, 21:04     # 10
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 29.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
[Hell`s]-JD_Johnatan
а если это не localhost?
__________________
Lord Skill вне форума  
Старый 30.12.2002, 22:24     # 11
Aeon
::VIP::
 
Аватар для Aeon
 
Регистрация: 28.06.2002
Адрес: neverwhere
Сообщения: 1 166

Aeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собойAeon Имеются все основания чтобы гордиться собой
[Hell`s]-JD_Johnatan
ты знаешь... зависит от привычек человека наверное, но мне таки не легче. Мне гораздо проще выстроить базу в уме, записать в текст-файл и просто его запихнуть в базу через shell чем выстраивать его в каком-то интерфейсе.
Aeon вне форума  
Старый 31.12.2002, 01:29     # 12
Stasik
Registered User
 
Аватар для Stasik
 
Регистрация: 27.03.2002
Адрес: дома
Сообщения: 1 660

Stasik Известность не заставит себя ждатьStasik Известность не заставит себя ждать
точно.. я вот через mysql текстом запихиваю
__________________
Всё будет хорошо!
Stasik вне форума  
Старый 31.12.2002, 05:21     # 13
Lord Skill
Member
 
Аватар для Lord Skill
 
Регистрация: 29.10.2002
Адрес: Estonia
Сообщения: 270

Lord Skill Путь к славе только начался
я тоже запросом!!
__________________
Lord Skill вне форума  
Старый 31.12.2002, 07:51     # 14
[Hell`s]-JD_Johnatan
Guest
 
Сообщения: n/a

Vidno Vy ne polzovalis MySQLAdmin`om... Tam mozhto sdelat tot zhe samiy zapros...
Eto delo vkusa... Kto-to pishet na PHP v FARe, a kto-to v DreamWeaver`e, a kto-to v M$ WORD`e... No esli u nih polu4itsya odinakovo - DA ZDRAVSTVUET SVOBODA VYBORA...
Tak zhe i tut... Mne bystree i udobnee eto sdelat 4erez MySQLAdmin... Pri etom ya to zhe samoe mogu i 4erez telnet sdelat... No vse taki my polzuemsya Windows`om a ne DOS`om.. Tak ved? GUI tozhe nado ispolzovat...
==========
Lord Skill
A esli ne localhost - chitai nastroiki MySQLAdmin... Tam vse legko nastraivaetsya... I 4to mne bolshe vsego nravitsya, on napisan na PHP... Menyai sebe nazdorov`e..

P.S. IMHO MySQLAdmin dlya Novi4ka - v samyi raz... Tam vsegda mozhno posmotret kak i 4to delat vru4nuyu...

Последний раз редактировалось [Hell`s]-JD_Johnatan; 31.12.2002 в 07:57.
 

Опции темы

Ваши права в разделе
Вы НЕ можете создавать новые темы
Вы не можете отвечать в темах.
Вы НЕ можете прикреплять вложения
Вы НЕ можете редактировать свои сообщения

BB код Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.

Быстрый переход


Часовой пояс GMT +4, время: 13:48.




Powered by vBulletin® Version 3.8.5
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.