之前学得一点linux shell 知识只为操作linux服务器群方便一点,节省了大把时间。
但凡项目必定用到数据库,这里不才初学一点mysql数据库,再次卖弄一番与大家共同学习。初次接触数据库时大家都说用什么sql语句来操作数据库,但是我发现那种方法不能及时了解sql的语法错误,再加之一直在使用eclipse,又发现eclipse 下用java、python一样能操作数据库。
下面不才查询网上很多资料初步总结了java查询、插入、删除、更新数据库。
准备工作:关于mysql安装和eclipse安装这里不再讲述;eclipse链接mysql数据库需要jdbc驱动插件模块作为外链接库,我的mysql版本是5.1.71,这里注意jdbc有版本兼容问题,所以需要mysql自带的jar文件模块。jdbc模块是一个jar文件(mysql-connect-java.jar)。若安装了完整的mysql-server可在系统某文件夹下找到,查找方法:find / -name 。若没有完整安装在镜像文件中安装查找到(镜像的导入方法http://blog.csdn.net/yxb3158/article/details/40250475)。
第一:在java项目名上右键-->build path-->add external archives,然后选择mysql-connect-java.jar文件即建立链接数据库的必备桥梁。
第二:小测试(需要修改成自身mysql的database和password)
package connect_mysql;
import java.sql.DriverManager;
import com.mysql.jdbc.Statement;
public class connet {
static java.sql.Connection conn = null;
static Statement st;
public static void main(String[] args) {
try {
Class.forName("com.mysql.jdbc.Driver");// 加载Mysql数据驱动
DriverManager.getConnection("jdbc:mysql://localhost:3306/xidian",
"root", "password");
// 连接URL为jdbc:mysql//服务器地址/数据库名 ,后面的2个参数分别是登陆用户名和密码
System.out.println("Success connect Mysql server!");
} catch (Exception e) {
System.out.println("数据库连接失败" + e.getMessage());
}
return; // 返回所建立的数据库连接
}
}
运行程序:Success connect Mysql server! 即表示成功
第三:应用
package hello; import java.sql.DriverManager; import java.sql.ResultSet; import java.sql.SQLException; public class hello { public static void main(String[] args) { try { Class.forName("com.mysql.jdbc.Driver"); // 加载MYSQL JDBC驱动程序 // Class.forName("org.gjt.mm.mysql.Driver"); System.out.println("Success loading Mysql Driver!"); } catch (Exception e) { System.out.print("Error loading Mysql Driver!"); e.printStackTrace(); } try { java.sql.Connection connect = DriverManager.getConnection( "jdbc:mysql://localhost:3306/xidian", "root", "mysql密码"); // 连接URL为jdbc:mysql//服务器地址/数据库名 ,后面的2个参数分别是登陆用户名和密码 System.out.println("Success connect Mysql server!"); // 插入数据库(去掉注释符即可使用) // insert(connect); // 刪除数据库(同上) // select(connect); // 查询数据库 java.sql.Statement st_mysql_table = connect.createStatement(); ResultSet rs = st_mysql_table.executeQuery("select * from user"); // user 为表的名称 while (rs.next()) { System.out.println(rs.getString("name") + "\t" + rs.getString("password")); } } catch (Exception e) { System.out.print("get data error!"); e.printStackTrace(); } } private static void select(java.sql.Connection connect) throws SQLException { int num = 100; java.sql.PreparedStatement Statement = connect .prepareStatement("DELETE FROM user where name=?"); for (int i = 0; i < num; i++) // 定义个100次的循环,删除满足条件的一百条信息。 { Statement.setString(1, "yxbb" + i); Statement.executeUpdate(); } } private static void insert(java.sql.Connection connect) throws SQLException { int num = 10; java.sql.PreparedStatement Statement = connect .prepareStatement("INSERT INTO user VALUES(?,?)"); for (int i = 0; i < num; i++) // 定义个100次的循环,往表里插入一百条信息。 { Statement.setString(1, "yxb" + i); Statement.setString(2, "130212" + i + 2); Statement.executeUpdate(); } } }