|
Познающий
Регистрация: 03.12.2008
Сообщений: 56
С нами:
9176827
Репутация:
29
|
|
Сообщение от Chaak
mysql_query(file_get_contents('dump.sql'))
Такой запрос не проходит...
Попробовал его на простейшем sql скрипте:
PHP код:
CREATE TABLE STUDENTS(
N_STUDENTSBOOK INT PRIMARY KEY,
LAST_NAME CHAR(15),
FIRST_NAME CHAR(10),
PATRONYMIC CHAR(15),
N_GROUP INT,
CELL CHAR(10),
CHECK (N_GROUP IN (41,42, 43, 44, 45)));
CREATE TABLE STUDIES(
N_STUDY INT PRIMARY KEY,
STUDY CHAR(20),
TEACHER_LASTNAME CHAR(15),
CHECK (N_STUDY > 0));
CREATE TABLE SESSION(
N_STUDENTSBOOK INT,
N_STUDY INT,
MARK INT,
PRIMARY KEY (N_STUDENTSBOOK, N_STUDY),
FOREIGN KEY (N_STUDENTSBOOK) REFERENCES STUDENTS(N_STUDENTSBOOK),
FOREIGN KEY (N_STUDY) REFERENCES STUDIES(N_STUDY),
CHECK (MARK IN (2, 3, 4 ,5)));
и на дампе базы данных полученной с помощью этого скрипта:
PHP код:
-- MySQL dump 10.11
--
-- Host: localhost Database: university
-- ------------------------------------------------------
-- Server version 5.0.67-community-nt
/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!40101 SET NAMES utf8 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;
--
-- Table structure for table `session`
--
DROP TABLE IF EXISTS `session`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `session` (
`N_STUDENTSBOOK` int(11) NOT NULL default '0',
`N_STUDY` int(11) NOT NULL default '0',
`MARK` int(11) default NULL,
PRIMARY KEY (`N_STUDENTSBOOK`,`N_STUDY`),
KEY `N_STUDY` (`N_STUDY`),
CONSTRAINT `session_ibfk_1` FOREIGN KEY (`N_STUDENTSBOOK`) REFERENCES `students` (`N_STUDENTSBOOK`),
CONSTRAINT `session_ibfk_2` FOREIGN KEY (`N_STUDY`) REFERENCES `studies` (`N_STUDY`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
SET character_set_client = @saved_cs_client;
--
-- Dumping data for table `session`
--
LOCK TABLES `session` WRITE;
/*!40000 ALTER TABLE `session` DISABLE KEYS */;
/*!40000 ALTER TABLE `session` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `students`
--
DROP TABLE IF EXISTS `students`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `students` (
`N_STUDENTSBOOK` int(11) NOT NULL,
`LAST_NAME` char(15) default NULL,
`FIRST_NAME` char(10) default NULL,
`PATRONYMIC` char(15) default NULL,
`N_GROUP` int(11) default NULL,
`CELL` char(10) default NULL,
PRIMARY KEY (`N_STUDENTSBOOK`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
SET character_set_client = @saved_cs_client;
--
-- Dumping data for table `students`
--
LOCK TABLES `students` WRITE;
/*!40000 ALTER TABLE `students` DISABLE KEYS */;
/*!40000 ALTER TABLE `students` ENABLE KEYS */;
UNLOCK TABLES;
--
-- Table structure for table `studies`
--
DROP TABLE IF EXISTS `studies`;
SET @saved_cs_client = @@character_set_client;
SET character_set_client = utf8;
CREATE TABLE `studies` (
`N_STUDY` int(11) NOT NULL,
`STUDY` char(20) default NULL,
`TEACHER_LASTNAME` char(15) default NULL,
PRIMARY KEY (`N_STUDY`)
) ENGINE=InnoDB DEFAULT CHARSET=cp1251;
SET character_set_client = @saved_cs_client;
--
-- Dumping data for table `studies`
--
LOCK TABLES `studies` WRITE;
/*!40000 ALTER TABLE `studies` DISABLE KEYS */;
/*!40000 ALTER TABLE `studies` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2010-04-28 11:02:05
В обоих случаях mysql_query(file_get_contents('dump.sql')) возвращает нулевое значение...
PHP код:
<?php
$dblocation = "localhost";
$dbname = "university";
$dbuser = "root";
$dbpasswd = "!qaz2wsx";
$dbcnx = @mysql_connect($dblocation, $dbuser, $dbpasswd);
if (!$dbcnx)
{
echo "<p>К сожалению, не доступен сервер mySQL</p>";
exit();
}
if (!@mysql_select_db($dbname,$dbcnx) )
{
echo "<p>К сожалению, не доступна база данных</p>";
exit();
}
$res = mysql_query(file_get_contents('1.sql'));
if(!$res)
{
echo "<p>Ошибка в запросе</p>";
exit();
}
?>
Срабатывает if(!$res)... Файл 1.sql лежит в той же папке что и php файл... Может я что-то не так делаю?
|