Win 使用终端创建mysql数据库及使用(5)
删除你创建过的数据库newsql里面的所有表
这里必须安装了mysql,并且知道用户名密码IP地址。因为我用的window,所以只介绍Win使用cmd创建的方式
首先windown+R 出现窗口输入cmd回车
输入下面,首先是你的mysql主机地址,root是你的用户名(如果改变要替换)然后回车,会出现输入mysql登录密码命令行
mysql -h xxx.xx.xx.xxx -u root -p
如果密码正确会出现如下窗口
如果要查看你在这个主机下有几个数据库输入命令
show databases; // ;这个符号是必须的
这些是我拥有的数据库,
一、创建新的数据库
create database newSql default charset=utf8; //创建默认utf-8中文的数据库newSql
二、选择你的数据库
use newSql;
回车,输入select Database(); 查看你的选择
1、创建表,和命名表里面拥有的字段
mysql> create table company ( -> id int auto_increment primary key, -> name varchar(20) -> othervarchar(20) -> createTime timestamp default current_timestamp, // 创建时间,当创建一个字段自动设置当前时间 -> updateTime timestamp default current_timestamp on update current_timestamp comment "最后一次更新时间" // 自动设置最后一次更新时的时间 , comment 备注 -> ); Query OK, 0 rows affected (0.06 sec) mysql>
约束条件(最好大写容易区分,符合标准):
-
- primary key ———–标识为该表的主键,是唯一标识
- foreign key ———–标识为该表的外键,是与之联系某表的主键
- not null ————标识该属性不为空
- unique ————标识该属性的值是唯一的
- auto_increment ——标识该属性的值自动增加
- default ————为该属性设置默认值
2、给表设置外键
如果在创建时候都设置外键那么是
mysql> create table school ( -> id int auto_increment primary key, -> company_id int, -> name varchar(20), -> other varchar(100),
-> createTime timestamp default current_timestamp, // 创建时间,当创建一个字段自动设置当前时间
-> updateTime timestamp default current_timestamp on update current_timestamp comment "最后一次更新时间" // 自动设置最后一次更新时的时间 , comment 备注
-> constraint COMPANYID foreign key (company_id) references company(id)
-> );
Query OK, 0 rows affected (0.06 sec) mysql>
外键注释:
-
- 给表school添加外键compay_id关联的是表company的id,外键的索引值是COMPANYID
- 如果不指定索引值,系统会自动生成 格式: foreign key (company_id) references company(id)
如果是已经创建了表添加外键
alter table school add constraint COMPANYID foreign key (company_id) references company(id); //设置了索引值 alter table school add foreign key (company_id) references company(id); // 未设置索引值
3、给表里的字段添加内容
insert into company(name,other) values("木子",15); // 添加name和other字段值,id这里设置了自增
4、 修改字段数据类型
alter table company modify name varchar(1000); 修改company表中的name字段的数据类型 最大为1000个字符
5、修改字段名字
alter table company change other desc varchar(2000); // 修改表company里面字段other为desc字段,数据类型为varchar最大2000个字符
6、 增加字段
alter table company add description varchar(40) NOT NULL after name; // 给表company添加字段description 数据类型为字符,最大40个字符 并且默认不为空, 字段放在name字段后面
输入
drop database newsql; 删除数据库newsql
drop table company; 删除表company(这里是没被关联的普通表)
如果关联了外键
set foreign_key_checks = 0; // 先设置外键约束检查关闭
drop table company; // 在删除表
set foreign_key_checks = 1; // 最后开启外键约束检查,以保持表结构完整性
或者先删除子表 再删除该表
show tables; 可以查看你创建了那些表,
alter table company rename companys; 修改表名字 修改表company为companys
alter table company drop other; 删除表company里面的字段other
desc company; 查看这个表里面的字段详情
truncate table company; 清空company表中的数据
update company set name=”李二” where id=1; (如果不写where及后面的表示修改所有的)
select name from company where id=1; (表示查看数据表company里面的id=1的name字段的值)
delete from company where id=1;(删除company表里面的id=1的数据)