commit
1979ba43fc
@ -0,0 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="DataSourceManagerImpl" format="xml" multifile-model="true">
|
||||
<data-source source="LOCAL" name="@localhost" uuid="31f3a16e-d54b-4596-809a-37bbd2defc86">
|
||||
<driver-ref>mariadb</driver-ref>
|
||||
<synchronize>true</synchronize>
|
||||
<jdbc-driver>org.mariadb.jdbc.Driver</jdbc-driver>
|
||||
<jdbc-url>jdbc:mariadb://localhost:3306</jdbc-url>
|
||||
<working-dir>$ProjectFileDir$</working-dir>
|
||||
</data-source>
|
||||
</component>
|
||||
</project>
|
@ -0,0 +1,122 @@
|
||||
<?php
|
||||
|
||||
class ScriptDatabase {
|
||||
|
||||
private Connection $con;
|
||||
public function __construct() {
|
||||
$this->con = connect();
|
||||
}
|
||||
|
||||
public function executeScript(): void
|
||||
{
|
||||
$queryScript = 'CREATE TABLE `Categorize` (
|
||||
`response` int(11) NOT NULL,
|
||||
`keyword` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Form` (
|
||||
`id` int(11) NOT NULL,
|
||||
`title` varchar(50) NOT NULL,
|
||||
`description` text NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Keyword` (
|
||||
`id` int(11) NOT NULL,
|
||||
`word` varchar(50) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `ListResponsesOfCandidate` (
|
||||
`id` int(11) NOT NULL,
|
||||
`date` datetime NOT NULL,
|
||||
`titleForm` varchar(50) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `PossibleResponse` (
|
||||
`id` int(11) NOT NULL,
|
||||
`content` text NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Propose` (
|
||||
`question` int(11) NOT NULL,
|
||||
`possibleResponse` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Question` (
|
||||
`id` int(11) NOT NULL,
|
||||
`content` text NOT NULL,
|
||||
`type` varchar(50) NOT NULL,
|
||||
`form` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Reference` (
|
||||
`possibleResponse` int(11) NOT NULL,
|
||||
`keyword` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Response` (
|
||||
`id` int(11) NOT NULL,
|
||||
`content` varchar(200) NOT NULL,
|
||||
`questionContent` text NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
CREATE TABLE `Submit` (
|
||||
`responsesCandidate` int(11) NOT NULL,
|
||||
`response` int(11) NOT NULL
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;
|
||||
ALTER TABLE `Categorize`
|
||||
ADD PRIMARY KEY (`response`,`keyword`),
|
||||
ADD KEY `keyword` (`keyword`);
|
||||
ALTER TABLE `Form`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
ALTER TABLE `Keyword`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
ALTER TABLE `ListResponsesOfCandidate`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
ALTER TABLE `PossibleResponse`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
ALTER TABLE `Propose`
|
||||
ADD PRIMARY KEY (`question`,`possibleResponse`),
|
||||
ADD KEY `possibleResponse` (`possibleResponse`);
|
||||
ALTER TABLE `Question`
|
||||
ADD PRIMARY KEY (`id`),
|
||||
ADD KEY `form` (`form`);
|
||||
ALTER TABLE `Reference`
|
||||
ADD PRIMARY KEY (`possibleResponse`,`keyword`),
|
||||
ADD KEY `keyword` (`keyword`);
|
||||
ALTER TABLE `Response`
|
||||
ADD PRIMARY KEY (`id`);
|
||||
ALTER TABLE `Submit`
|
||||
ADD PRIMARY KEY (`responsesCandidate`,`response`),
|
||||
ADD KEY `response` (`response`);
|
||||
ALTER TABLE `Form`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `Keyword`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `ListResponsesOfCandidate`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `PossibleResponse`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `Question`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `Response`
|
||||
MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
|
||||
ALTER TABLE `Categorize`
|
||||
ADD CONSTRAINT `Categorize_ibfk_1` FOREIGN KEY (`keyword`) REFERENCES `Keyword` (`id`),
|
||||
ADD CONSTRAINT `Categorize_ibfk_2` FOREIGN KEY (`response`) REFERENCES `Response` (`id`);
|
||||
ALTER TABLE `Propose`
|
||||
ADD CONSTRAINT `Propose_ibfk_1` FOREIGN KEY (`possibleResponse`) REFERENCES `PossibleResponse` (`id`),
|
||||
ADD CONSTRAINT `Propose_ibfk_2` FOREIGN KEY (`question`) REFERENCES `Question` (`id`);
|
||||
ALTER TABLE `Question`
|
||||
ADD CONSTRAINT `Question_ibfk_1` FOREIGN KEY (`form`) REFERENCES `Form` (`id`);
|
||||
ALTER TABLE `Reference`
|
||||
ADD CONSTRAINT `Reference_ibfk_1` FOREIGN KEY (`keyword`) REFERENCES `Keyword` (`id`),
|
||||
ADD CONSTRAINT `Reference_ibfk_2` FOREIGN KEY (`possibleResponse`) REFERENCES `PossibleResponse` (`id`);
|
||||
ALTER TABLE `Submit`
|
||||
ADD CONSTRAINT `Submit_ibfk_1` FOREIGN KEY (`response`) REFERENCES `Response` (`id`),
|
||||
ADD CONSTRAINT `Submit_ibfk_2` FOREIGN KEY (`responsesCandidate`) REFERENCES `ListResponsesOfCandidate` (`id`);
|
||||
COMMIT;';
|
||||
|
||||
|
||||
$this->con->executeQuery($queryScript);
|
||||
try {
|
||||
$test = "SELECT * FROM Categorize;";
|
||||
$this->con->executeQuery($test);
|
||||
}catch (Exception $e){
|
||||
echo $e->getMessage();
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
}
|
Loading…
Reference in new issue