mysql和JDBC
1.常用语句:
Create database xxx character set gbk; 创建库
Show create database xxx;查看库的编码。
Drop database xxx;删除库。
Select database();查看当前正在操作的库。
Desc xxx;查看表结构
Alter table xxx add xxx 数据类型(长度)[约束] ;添加列。
Alter table xxx modify xxx 数据类型(长度)[约束]; 修改列的名。
Alter table xxx change 旧类名 新类名 类型(长度)[约束]。
Alter table 表名 drop 列名。删除
Alter table xxx rename to vvv; 修改表名。
Alter table xxx character set 编码。修改表的字符集
Show create table xxx;\G 查看当前表的字符集。
!如果插入为字符串或日期类型需加单引号
insert into 表名(列名1,列名2) values(值1,值2);插入数据。
insert into 表名 values(值1,值2);插入数据,必须给每一个字段设置值。
set names gbk;解决中文乱码问题、
2.Update操作:
Update xxx set 字段名=值,字段名=值;把该列的所有值都改成-值-,不带条件的!
Update xxx set 字段名=值,字段名=值 where 条件;给条件的!
3.删除表的记录
Delete from 表名 where 条件;对id的影响是id不会重新排列
Delete from 表名;表内数据全部删除。
4.delete和truncate的区别。
Delete是一条一条的删除,配何事物,可以找回数据。
Truncate是删除整个表,再建立相同的表,无法恢复数据。
开启事物start transaction(); 操作 rollback();
注意:delete删除,id不会重置!而使用truncate操作,id会重置[因为它删除了表结构,然后再创建一张一模一样的表,所以再次插入数据的数据的时候从1开始。]
5.简单查询:
Select xxx,vvv from yyy;查询xxx,yyy两个列。
3.查询所有商品信息使用表别名
select * from product as p; as可以省略
4.查询商品名,使用列别名
select pname as p from product;as可以省略。
5.去掉重复值(按照价格)
select distinct(price) from product;
6.将所有的商品的价格+10进行显示
select pname,price+10 from product;
7.truncate缩短和delete的区别?
8.Transaction:交易,业务,事务; 办理,处理
9.5.去掉重复值(按照价格)
select distinct(price) from product;
10.查询商品名,使用列别名
select pname as p from product
11. 删除表的列
alter table 表名 drop 列名
12.JDBC常见开发步骤:
1注册驱动2.获得链接3.获得语句执行者4.执行sql语句5.处理结果6.释放资源
12.获取连接的方法DriverManager.getConnection(url,username,password);
Mysql的url:jdbc:mysql://localhost:3306/mydb1这是一个协议。
拓展url参数:指定编码
13.执行sql语句:int executeUpdate(String sql);删改增 DML语句
ResultSet executeQuery(String sql);DQL语句。
Boolean execute(String sql);执行select返回true执行其他返回false
A:返回true,获得getRusultSet()获得查询结果。
B:返回false,getUpdateCount()获得影响行数。
14.使用:PreparedStatement叫预编译声明
15.完整版登录且带有预编译案例:
Class.forName(“com.mysql.jdbc.Driver”);
Connection--con=DriverManager.getConnection(“jdbc:mysql;//localhost:3306/wjs”,”root”,”root”);
接下来预编译:
Preparestatment ps=con.prepareStatment(“select * from 表名 where name=?”);w
ps.setString(“1,李”);
ResultSet rs=ps.executeQuery();
Rs.next.....关rs ps conn。
16.Limit关键字进行查询操作:
(limit,A,B) A:要查询的页数减一×B,B:每页显示的条数。
17.注意:mysql中指定编码utf-8为UTF8
18.ResultSet中columnIndex表示列的索引,列索引从1开始,而不是0
decimal:泛型blob:字节类型 timestamp时间戳 concur:共同作用,同时发生 template模板 constraint强制约束 references指向 resourceBundle 资源捆绑