当前位置 博文首页 > mataodehtml的博客:java学习之路——第四十天
Mysql day02
1.mysql数据库的快速入门
???????? # 创建一个java1810_1数据库
???????? create database java1810_1;
???????? --使用我们创建的数据库
???????? use java1810_1;
?
???????? # 创建一张学生表 t_student
???????? create table 表名(
?????????????????? 列名 列类型,
列名 列类型,
列名 列类型,
列名 列类型
);
????????
???????? # 查看当前数据库中有哪些表
???????? show tables;
????????
/*??? 向数据库中的表插入数据(记录)???
插入部分的列???????
insert into 表名(要插入的列名1,列名2,,,) values(填写对应的列值,,,)???
插入全部的列???????
insert into 表名 values(列值1,,,,) */
?-- 插入所有的列
insert into t_student values(1001,'zhangsan',22,'hefei','好学生'); i
nsert into t_student values(1003,'王五',24,'安庆','好学生');
?-- 插入部分列
-- 未插入的列,以null值补全
insert into t_student(sno,name,age) values(1002,'lisi',23);
-- 查询表中的所有记录
select * from t_student;
?
-- 删除表中的记录
-- 删除满足条件的记录
-- 删除学号是 1002 的学生信息
delete from t_student where sno=1002;
-- 删除所有记录
?delete from t_student;
?-- 删除表
drop table t_student;
-- 删除数据库
?drop database java1810_1;
????????
?
2、SQL语言的分类
标准的SQL 分为? DDL? DML? DCL
?
因为查询语句在SQL中比较重要,用的也很多,所以将查询从DML 中分离出来 形成一个DQL语句。
?
将安全事务从DCL 分离形成 TCL 语句
?
现在的语句一般认为有下面几种
?
DDL(★★★)??
?数据定义语言,代表关键字为? create drop alter
DML(★★★)??? 数据操纵语言,代表关键字为? insert,update,delete
DCL
安全性相关的,主要是负责对数据库用户的操纵(创建,授权,收权,删除... 主要是DBA的工作) DQL (程序员重点掌握★★★★★)??? 数据查询语言,代表关键字为? select
TCL (★★★★★)??? 事务控制语言, commit? rollback...
?
3、DDL? SQL语言
1. 创建数据库
?2. 删除数据库
?3. 创建表
?4. 删除表
?5. 修改表
?
?
?
??
-- 1. 创建数据库
?/*??? create database 数据库名字; */
?-- 2. 删除数据库
?/*??? drop database 数据库名字; */
-- 3. 创建表
?/*??? create table 表名(??????? 列名? 列类型,??????? 列名? 列类型,?????? ?......??????? 列名? 列类型??? );
?
??? SQL建议,所有的关键字大写.??? */
?CREATE TABLE t_student(?
? sno INT,?
? NAME VARCHAR(30),?
? sex INT,??
?addr VARCHAR(50) );
?-- 4. 删除表
?/*??? drop table 表名; */
?-- 5. 修改表?
alter
?-- 查看表结构
-- desc 表名;
DESC t_student;
/*??
?1. 修改表之修改表名? ?
?alter table 旧表名 rename to 新表名
??? 将 t_student 表名 修改成 student 表名
?*/
?ALTER TABLE t_student RENAME TO student;
?SHOW TABLES;
?ALTER TABLE t_emp RENAME TO emp;
?/*??
?2. 修改表之修改列名??
?alter table 表名? change? 旧字段名 新字段名 新数据类型?
? 将 addr 列名 修改成 address
?*/
ALTER TABLE student CHANGE addr address VARCHAR(50);
?/*???
3. 修改表之修改列类型??
?alter table 表名 modify 字段名 数据类型??
?将性别从 int 类型 修改成 字符串类型
?*/
ALTER TABLE student MODIFY sex VARCHAR(2);
/*??
?4. 修改表之添加列??
?alter table 表名? add 新字段名 数据类型???
给 student 表添加一个年龄
*/
ALTER TABLE student ADD age INT;
?/*??
?第一列 :
alter table 表名? add 新字段名 数据类型 first??
?在第一列添加一个
年龄
?*/
?DESC student; ALTER TABLE student ADD age INT FIRST;
/*
?? 添加指定列:alter table 表名? add 新字段名???
?数据类型 after 字段名??
?在学号后面添加一个姓名
?*/
?ALTER TABLE student ADD NAME VARCHAR(30) AFTER sno;
/*?????
5. 修改表之删除列??
?alter table 表名 drop 字段名
*/
?ALTER TABLE student DROP NAME;
?
-- mysql 关键字处理
?-- 如果要创建一张表,表名叫做 table
?-- 使用 ` 将 关键字 引起来。
?CREATE TABLE `table`(
t_id INT,
t_name VARCHAR(30)
);
cs