SQL语句及多表设计与查询

SQL语句

操作数据库

创建数据库

CREATE DATABASE [IF NOT EXISTS] db_name [create_specification [, create_specification] ...]
create_specification:... [DEFAULT] CHARACTER SET charset_name. | [DEFAULT] COLLATE collation_name

创建一个名称为mydb1的数据库:
create database mydb1;
创建一个使用gbk字符集的mydb2数据库:
create database mydb2 character set gbk;
创建一个使用utf8字符集,并带校对规则的mydb3数据库:
create database mydb3 character set utf8 collate utf8_bin;

查看数据库

显示数据库语句:
SHOW DATABASES
显示数据库创建语句:
SHOW CREATE DATABASE db_name

查看当前数据库服务器中的所有数据库:
show databases;
查看前面创建的mydb2数据库的定义信息:
show create database mydb2;

修改数据库

ALTER DATABASE [IF NOT EXISTS] db_name..[alter_specification [, alter_specification] ...]
alter_specification:... [DEFAULT] CHARACTER SET charset_name. | [DEFAULT] COLLATE collation_name

查看服务器中的数据库,并把其中mydb2字符集修改为utf8:
alter database mydb2 character set utf8;

删除数据库

DROP DATABASE [IF EXISTS] db_name

删除前面创建的mydb1数据库:
drop database mydb1;

选择数据库

进入数据库:use db_name;
查看当前所选的数据库: select database();

操作表

创建表

CREATE TABLE table_name
(
    field1  datatype,
    field2  datatype,
    field3  datatype,
);

[character set 字符集] [collate 校对规则]
field:指定列名 datatype:指定列类型

MySQL常用数据类型:
字符串型:VARCHAR、CHAR

大数据类型:BLOB、TEXT

数值型:TINYINT 、SMALLINT、INT、BIGINT、FLOAT、DOUBLE

逻辑型:BIT

日期型:DATE、TIME、DATETIME、TIMESTAMP

定义单表字段的约束:
定义主键约束
primary key:不允许为空,不允许重复
删除主键:alter table tablename drop primary key;
主键自动增长 :auto_increment

定义唯一约束
unique
例如:name varchar(20) unique

定义非空约束
not null
例如:salary double not null

外键约束

创建一个员工表employee

create table employee(
    id int primary key auto_increment,
    name varchar(20) unique,
    gender bit not null,
    birthday date,
    entry_date date,
    job varchar(40),
    salary double,
    resume text
);

查看表

查看表结

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值