ARP способ для сопоставления IP-адресов с MAC-адресами. Вот как это делает IP-стек.
Я не уверен, что есть переносимый способ получить эту информацию, поскольку она обычно важна только для разработчиков ядра и системных администраторов.
Из большого количества веб-поиска это похоже, что можно получить таблицу ARP маршрутизатора с помощью SNMP, но я не нашел много конкретной информации о том, как это сделать. Однако я нашел бесплатную библиотеку Java для SNMP здесь . Некоторые из них могут оказаться полезными.
Лучшее, что нужно сделать, это просто включить в CSV 2 столбца без автоинкремента, а затем явно установить столбец идентификатора в NULL в инструкции infile load data.
Что-то вроде этого:
LOAD DATA INFILE '/tmp/data.csv' INTO TABLE your_table ПОЛЯ, ПРЕРЫВАННАЯ ',' (AField, BField) SET ID = NULL;
вы можете «пропустить» поле «ИД» в строке данных, поместив знак разделителя в начало строки, например (для схемы таблицы ID, AField, BField
):
, afieldvalue, bfieldvalue ...
при чтении такого файла csv, сценарий будет присваивать NULL
полю ID
[ ! d5]
Попробуйте использовать NULL в качестве значения в файле csv для поля ID.
LINES TERMINATED by '\r \n'
Это было ключом к успеху для меня при использовании текстового файла
Если у вас есть только небольшое количество столбцов, вы можете просто назвать их: LOAD DATA LOCAL INFILE 'myfile.txt' INTO TABLE mytable (AField);
(при условии, что только ID & amp; AField)
LOAD DATA INFILE '/tmp/data.csv' INTO TABLE your_table FIELDS TERMINATED BY ',' LINES TERMINATED by '\r' (AField, BField);
NULL
в CSV-файле читается как STRING в MySQL. Если вы хотите иметь нулевые значения в столбце MySQL, вместо [D1] \n вместо `NULL. Это устранит проблему, и вы получите требуемый результат.
(your_table.AField, your_table.BField)
, если ваш CSV имеет одинаковые имена столбцов. – raspi 7 April 2014 в 18:04