Java学习篇之SQL语句(操作数据库和数据表)

时间:2022-09-12 20:43:29
  学习的时候绝对不能眼高手低,要不我的数据库就不会第三次才考过,今年第三次考数据库之前,把往年的考卷拿出来进行复习,将注意力放在了前两次考试时候蒙圈的地方,包括SQL语句的书写,可是,那些试卷上基本上涉及的语句都是对数据表中数据的操作,没有涉及到建库、建表,于是,我就没再翻书,一直死抠历年试卷,结果到了考场上,写sql语句题型的第一道题就是让写一个建表的语句,当时就傻了……原本以为我还需要考第四次,出乎意料的是最后还是过了,考试不失为一种督促人学习,又让人不断受到学习态度审判的一种方式,还是踏实对待每个知识点吧!
  下文的写作思路:建库—>使用库—>建表—>操作表
  语法规则
    建议关键字大写,自己定义的小写

  数据库操作

	-- 创建:
CREATE DATABASE mydatabase;(库名)
-- 查看:
SHOW DATABASES;
-- 删除:
DROP DATABASE mydatabase;
-- 使用:
USE mydatabase;

  使用提示:同时写的操作语句,选中谁,运行谁,要注意的就是养成每个语句后写个分号的习惯,以免同时运行的时候被当做一句执行。

  数据表操作

	-- 创建:
CREATE TABLE 表名(
列名1 数据类型 约束(可以不写),
列名2 数据类型 约束(可以不写),
列名2 数据类型 约束(可以不写)(不加逗号)
);

-- 约束起到了限制作用,就像集合中的泛型
-- 主键:保证当前字段非空、唯一的 PRIMARY KEY
-- 让主键列数据实现自动增长 AUTO_INCREMENT

-- 删除:
DROP TABLE 表名 //删除表
ALTER talbe 表名 DROP 列名 //删除列

-- 修改:
ALTER TABLE 表名 ADD 列名 数据类型 约束 //添加列名
ALTER TABLE 表名 MODIFY 列名 数据类型 约束 //修改列名
ALTER TABLE 表名 CHANGE 旧列名 新列名 数据类型 约束 //改列名
RENAME TABLE 表名 TO 新名 //改表名

-- 添加:
-- 主键自增长,不用管断号问题,没有实际意义,只在数据库中起作用

  关于注释

    单行:--空格
       多行注释:/**/
  关于数据库和数据表的操作的使用实例
  

-- 创建数据库
CREATE DATABASE mybase;
-- 使用数据库
USE mybase;
-- 创建数据表
CREATE TABLE users(
uid INT PRIMARY KEY AUTO_INCREMENT,
uname VARCHAR(20),
uaddress VARCHAR(50)
);
/*
一般不执行以下操作
show tables; 显示所有数据表
desc users; 展示某一个表的详细信息
drop table users; 删除数据表
*/
-- 修改表
-- 添加列
ALTER TABLE users ADD tel INT;
-- 修改列(涉及数量类型转化的问题,谨慎操作)
ALTER TABLE users MODIFY tel VARCHAR(50);
-- 修改列名
ALTER TABLE users CHANGE tel newtel DOUBLE;
-- 修改表名
RENAME TABLE nusers TO users;

-- 删除列
ALTER TABLE users DROP tel;

  修改列和修改列名的区别?
    修改列就是不修改名字,只是修改他的信息,比如数据类型和约束
    修改列名只是单纯的修改列名