MySQL--数据库、数据表 的基本操作指令

数据库的操作

--链接数据库
mysql -uroot -p

--退出数据库
quit
exit

--查看所有数据库
show databases;

--显示当前数据库的时间
select now();

--显示数据库版本
select version();

--创建数据库
create database homework(数据库名字);
create database homework charset=utf8;

--查看创建数据库的语句
show create dtabase homework;

--删除数据库
drop database homework

--使用数据库
use homework(数据库名字)

--显示当前使用的数据库
select database();

数据表的操作

--查看当前数据库中的所有表
show tables;

--创建表(可以换行,不影响程序)
--create table 表名(字段   类型(长度)  约束,字段   类型(长度)  约束 );
--长度可以不写等同于默认,约束可以不写等同于默认
--约束包括三部分:primary key(表示主键)   not null(表示不能为空)  auto_increment(表示自动增长) 
--enum 枚举,default 默认值
create table python3(id int, name varchar(30));
craete table python4(id int primary key not null auto_incrament, name varchar(30));

--创建students表(id name age high gender class_id)
--unsigned 无符号,正数,数据类型上篇博客介绍了。decimal(5,2)  小数,共5位,小数点后占2位。
create table students(
 		id int unsigned not null auto_increment primary key,
 		name varchar(30),
 		age tinyint unsigned default 0,
 		high decimal(5,2),
 		gender enum(‘男’, ‘女’, ‘未知’)  default ‘未知’,
 		class_id int unsigned
);

--查看表结构
desc python3;

--向表中插入数据
insert into students values(0, ‘老王’, 18, 188.00, 'man', 0)

--查看表中的记录
select * from students;

--向表中添加字段
alter table 表名 add 列名 类型

--修改表中的字段,不改变列名
alter table 表名 modify 列名 新类型

--修改表中的字段,改变列名
alter table 表名 change 列名  新列名 新类型

--删除表中的字段
alter table 表名 drop 列名

--删除表
drop table 表名

数据的操作

--插入数据
--自动增长的主键有三种表达方式  0   null  default
--枚举类型的下标从数字1开始,1--man  2--woman  3--unknown
insert into students values(0,'xiaohong', 20, 'woman', 1, '1990-01-01');
insert into students values(null,'xiaohong', 20, 'woman', 1, '1990-01-01');
insert into students values(default,'xiaohong', 20, 'woman', 1, '1990-01-01');
insert into students values(0,'xiaohong', 20, 1, 1, '1990-01-01');

--部分插入数据
insert into students (name, gender) values ('xiaogang', 1);

--多行部分插入数据
insert into students(name, gender) values ('xiaoming', 1),('xiaofei', 2);

--多行全部插入数据
insert into students values(default,'xiaohong', 20, 'woman', 1, '1990-01-01'),(default,'xiaoh', 20, 'woman', 1, '1990-01-01');

--修改值
update 表名 set 列1=值1,列2=值2... where 条件
update students set age=20 where name='xiaoming';
update students set age=20,gender=2 where id=3;

--查询全部数据
select * from 表名

--查询指定数据
select * from 表名 where 条件
select * from students where id>3;

--查询指定列
select 列1,列2... from 表名
select name,gender from students;

--查询指定列,并且指定别名,当指定多个列时,显示的顺序就是指定的顺序
select 列1 as 别名1,列2 as 别名2 from 表名
select name as 姓名,gender as 性别 from students;  -- 姓名  性别
select gender as 性别,name as 姓名 from students; --  性别  姓名

--删除全部数据
delect from 表名

--删除指定数据(真删除)
delete from 表名 where 条件
delete from students where name='xiaoming';

--删除指定的数(假删除)
--逻辑删除,添加一个字段 is_delete  类型 bit ,通过设置is_delete的值0/1来表示这条记录是否使用
alter table students add is_delete bit default 0;  --添加字段
update students set is_delete=1 where id=3;  --将要删除的记录 is_delete设置为1
select * from students where is_delete=1; -- 删除的
select * from students where is_delete=0; -- 删除后的

注意事项:

1. sql 语句以 ;结尾,并且支持换行

2. 数据库涉及字符规范

采用26个英文字母(区分大小写)和0-9这十个自然数,加上下划线’_'组成,共63个字符.不能出现其他字符(注 释除外).

注意事项:

  1. 以上命名都不得超过30个字符的系统限制.变量名的长度限制为29(不包括标识字符@).
  2. 数据 对象、变量的命名都采用英文字符,禁止使用中文命名.绝对不要在对象名的字符之间留空格.
  3. 小心保留词,要保证你的字段名没有和保留词、数据 库系统或者常用访问方法冲突
  4. 保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性.假如数据类型在一个表里是整 数,那在另一个表里可就别变成字符型了.

3.数据库命名规范

数据库,数据表一律使用前缀。
正式数据库名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.比如:
web_19floor_net
备 份数据库名使用正式库名加上备份时间组成,如:
web_19floor_net_20070403

4.数据库表命名规范

数据表名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.
相关应用的数据表使用同一前缀,如 论坛的表使用cdb_前缀,博客的数据表使用supe_前缀,前缀名称一般不超过5字。
比如:
web_user
备 份数据表名使用正式表名加上备份时间组成,如:
web_user_20070403

5.字段命名规范

字段名称使用单词组合完成,首字母小写,后面单词的首字母大写,最好是带表名前缀.
如 web_user 表的字 段:
userId
userName
表与表之间的相关联字段要用统一名称,
如 web_user 表 里面的 userId 和 web_group 表里面的 userId 相对应。

6.字段类型规范

规则:用尽量少的存储空间来存 数一个字段的数据.
比如能用int的就不用char或者varchar
能用tinyint的就不用int
能用 varchar(20)的就不用varchar(255)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值