TchernyavskyDaniil, как бывший "вроде нормальный преподаватель" могу пожаловаться на рамки учебного процесса и утвержденные методички в которых понятия API вобще не существует. Так что если следовать букве учебного процесса, на выходе будете знать фортран и делфи. Да даже чертовы уроки БД превращались в цирк по документам
Файл можно создать на том же хосте, где расположен MySQL. Если ОС настроена с возможностью на сетевой диск с общим доступом, можно писать и на другой сервер.
Если поле в таблице равно NULL, в CSV файле будет выведено \N.
Для записи файла на локальный диск на сервере пользователю требуются права FILE не на уровне БД, а глобально на уровне сервера MySQL. Можно установить через PHPMyAdmin или запросом
GRANT FILE ON * . * TO 'username'@'localhost' WITH MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0 ;
Для записи файла в каталог, на каталог должны быть даны права на запись для пользователя mysql или стоять атрибуты 757 или 777 (разрешена запись для прочих пользователей