Как изменить тип данных с varchar
на int
с использованием соединения JDBC с Java таблицы в MySQL?Изменение типа данных с помощью java jdbc таблицы MySQL
Я пытался использовать запрос:
Alter table table_name CHANGE 'col 1' 'col 1' int (5);
файл я ввожу с помощью опции импорта имеет значение в VARCHAR, но требуется только целые значения из этой таблицы. Значения импортированной таблицы не упорядочены, но значения целого значения полезны для меня.
Когда я альтер запрос в PHPMyAdmin он работает абсолютно нормально, но когда я попытался изменить в JDBC он дает мне ошибку:
Incorrect integer value: at 'col 1';
JDBC-код был как:
try {
Connection co=DriverManager.getConnection("jdbc:mysql://localhost:3306/csv_db","root",null);
String c= " ALTER TABLE tpf1 MODIFY `col 3` int(5)";
String t="Alter table table_name CHANGE 'col 1' 'col 1' int (5);";
Statement stmt=co.createStatement();
stmt.executeUpdate(t);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this, ex);
}
Edit
try {
Connection co=DriverManager.getConnection("jdbc:mysql://localhost:3306/csv_db","root",null);
String c= " ALTER TABLE tpf1 MODIFY `col ` int(20)";
Statement stmt=co.createStatement();
stmt.executeUpdate(t);
} catch (SQLException ex) {
JOptionPane.showMessageDialog(this, ex);
}
Это на самом деле файл в формате pdf и преобразовал его в .csv и импортировал в мою базу данных И мне нужны только целочисленные значения из таблицы, а не любые другие алфавиты и символы. Этот код предназначен только для одного столбца, и мне нужно изменить все три столбца. Что мне делать, чтобы получить только целочисленные значения, используя jdbc? : | :)
Просто запустите другой запрос. См. Ссылку на соответствующий запрос. http://stackoverflow.com/questions/21784201/mysql-convert-column-datatype-from-varchar-to-int –
Знаете ли вы, как изменить все это, или вы застряли в том, как выполнить его с JDBC? –
Вместо '' col 1'' вам нужно использовать '\' col 1 \ '', хотя это может означать, что 'col 1' содержит значение, которое не конвертируется в целочисленное значение. –