MySQL使用笔记

2022-06-28 20:48:25 浏览数 (1)

本文最后更新于 685 天前,其中的信息可能已经有所发展或是发生改变。

  • CREATE VIEW <视图名> AS <SELECT语句>
  • 存储过程
代码语言:javascript复制
    mysql> delimiter $$  #将语句的结束符号从分号;临时改为两个$$(可以是自定义)
mysql> CREATE PROCEDURE delete_matches(IN p_playerno INTEGER)
    -> BEGIN
    ->   DELETE FROM MATCHES
    ->    WHERE playerno = p_playerno;
    -> END$$
Query OK, 0 rows affected (0.01 sec)

mysql> delimiter;  #将语句的结束符号恢复为分号
  • 查询和" 01 "号的同学学习的课程完全相同的其他同学的信息 先找相同的课程,在判断数量是否相同
  • desc降序 asc升序 where可以和having一起使用,having的作用域是分组
  • sum(case when sc.score>=60 then 1 else 0 end)/count(*) as 及格率,
  • 创建数据库时设置默认编码 注意是utf8 而不是utf-8 create database db_name default character set utf8
  • 创建表时加备注
代码语言:javascript复制
create table tb_name(
        id int(8) primary key auto_increment comment '编号',
        name vachar(32) not null comment '名字'
);
  • auto_increment自动增长的 赋值时使用default insert into tb_name values(default,'张三');
  • 数据库中的约束为了数据库中数据的完整性
  • navicat 运行已选择的的sql 快捷键:ctr shift r
  • Dbeaver 运行当前光标所在行的sql快捷键:ctrl enter
  • 这是长连接,一直和数据库保持连接,rs.next()改变访问数据库的下标,直到访问结束,数据获取完
代码语言:javascript复制
conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/bjsxt","root","***");
ps = conn.prepareStatement("select * from flower;");
rs = ps.executeQuery();
while(rs.next()){
    flowerList.add(new Flower(rs.getInt(1),rs.getString(2),rs.getDouble(3),rs.getString(4)));
}
  • 在MYSQL中插入当前时间
    • NOW()函数以YYYY-MM-DD HH:MM:SS返回当前的日期时间,可以直接存到DATETIME字段中。
    • CURDATE()YYYY-MM-DD的格式返回今天的日期,可以直接存到DATE字段中。
    • CURTIME()HH:MM:SS的格式返回当前的时间,可以直接存到TIME字段中。
  • MySQL当值为null的表达用is不用=,因为null在数据库里不是表示空,而是表示未知 update info_carport set INPUT_TIME = now() where INPUT_TIME is null;
  • 字段数量以及字段长度 mysql innodb引擎支持最大字段上线为1017 mysql myisam引擎最大字段上限为2410 latin1字符集下的表varchar上限为65532,即一个字符一个字节 utf8字符集下的表varchar上限为21844,即一个字符三个字节 TEXT字符串,最大长度为65 535个字符 MEDIUMINT字符串,最大长度为16 777 215个字符 LONGTEXT字符串,最大长度为4 294 967 295个字符

Post Views: 478

0 人点赞