Class.forName("com.mysql.cj.jdbc.Driver");//加载驱动
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test_demo?useSSL=false&allowPublicKeyRetrieval=true&serverTimezone=UTC","root","password");//建立连接
getConnection的参数中test_demo是数据库名称,useSSL=false表示关闭SSL连接(MySQL 8.0 以上版本不需要建立 SSL 连接),allowPublicKeyRetrieval=true允许客户端从服务器获取公钥,“root”,"password"是数据库账号密码。
创建一个Statement对象,Statement 对象用于将 SQL 语句发送到数据库中。
Statement state;
state = conn.createStatement();
SQL语句是对数据库进行操作的语句,SQL语句对大小写不敏感。
建表的SQL语句,此处创建一个User表,有两列,数据类型都为字符串。
String users="create table users("
+"username varchar(10) not null,"
+"pass varchar(8) not null,"
+"primary key ( username )"
+")";
使用以下语句将SQL语句发送到数据库,创建表
state.executeUpdate(users);
同样的创建person表
String persons ="create table persons("
+"username varchar(10) not null,"
+"name varchar(20) not null,"
+"age int,"
+"teleno char(11),"
+"primary key ( name )"
+")";
state.executeUpdate(persons);
同样用Statement对象的executeUpdate方法
String sql = "insert into users(列1, 列2,...) values(值1, 值2,....)";
state.executeUpdate(sql);
删除某行,例如删除persons表中username = ‘laowang’ 的行
DELETE FROM persons WHERE username = 'laowang'
还是使用executeUpdate方法
state.executeUpdate(DELETE FROM persons WHERE username = 'laowang')
String sql = "update users set username = 'a' where username = 'laowang' ";
state.executeUpdate(sql);
String sql = " select * from users where username = 1 ";
int num = st.executeUpdate(sql);