数据库的基本操作不必理解,咔咔的,记忆就完了。
先说一下mysql的基本操作有哪些:
一,如何登录数据库连接
命令行方式:mysql -u root -p password
Navicat方式:如果登录的是本机数据库,那么只需设置主机名或者ip地址为localhost,端口是3306即可。如果登录的是远程数据库,那么除了设置主机名和端口外,还需要设置ssh信息,此时需要远程安装数据库的服务器开始了ssh服务。
二,数据库操作
先说一下层次:数据库连接名 -> 数据库 -> 表 这三层关系必须搞清楚。一个数据库连接名下可以有多个数据库,一个数据库中可以有多个表。
对于数据库的操作:
SHOW DATABASES;
查看所有数据库
CREATE DATABASE blog;
创建blog数据库
USE blog; SHOW TABLES;
查看blog数据库里面的所有数据表
DROP DATABASE blog;
删除数据库blog
如何修改数据库的密码呢?
#cmd,运行DOS,cd到mysql的bin文件夹,然后执行如下
D:\Mysql\bin>mysqladmin -u root -p password newPwd
#Enter password:(在此输入原密码)
#newPwd指的是新密码
然后打开mysql 直接输入新密码即可
三,表操作
创建数据表
mysql> USE 库名;
mysql> CREATE TABLE 表名 (字段名 VARCHAR(20), 字段名 CHAR(1));
创建数据表(复杂形式)
#创建customer表:
create table customers(
id int not null auto_increment,
name char(20) not null,
address char(50) null,
city char(50) null,
age int not null,
love char(50) not null default 'No habbit',
primary key(id)
)engine=InnoDB;
SHOW COLUMNS FROM auth_user;
查看数据表auth_user中所有的列
DESCRIBE auth_user;
作用同上
DROP TABLE 表名;
删除数据表
DELETE FROM 表名;
清空数据表
更改表结构
#增加一列
alter table pet add des char(100) null;
#删除
alter table pet drop column des;
重命名表
rename table pet to animals;
添加id字段
alter table pet add id int not null
primary key auto_increment first;
设置外键foreign-key
首先说一下可以使用外键的3个先决条件:
1.两个表必须是InnoDB表,默认的MyISAM表不支持外键;
2.外键列必须建立了索引,但MySQL 4.1.2以后的版本在建立外键时会自动创建索引; 增加索引的sql语句如下:
alter table table_name add index index_name(column_name);
3.外键关系的两个表的列必须是数据类型相似,也就是可以相互转换类型的列,比如int和tinyint可以,而int和char则不可以;
使用外键是要分清referencing table和referenced table。referencing table中注册了外键,referenced table表中描述外键的具体信息。可以通过on delete cascade; on update cascade;设置自动级联约束。如果没有设置级联约束的话,当在主表中删除或更新数据,在字表中添加数据时,可能会报错。
具体如何理解和使用外键可以参考这篇文章,太![img](file:///C:\Users\lenovo\AppData\Local\Temp\SGPicFaceTpBq\4500\08BA1625.jpg)了,铜锣湾扛把子的风格。
链接如下:点击打开
ps:
1、MyISAM:默认表类型,它是基于传统的ISAM类型,ISAM是Indexed Sequential Access Method (有索引的顺序访问方法) 的缩写,它是存储记录和文件的标准方法。不是事务安全的,而且不支持外键,如果执行大量的select,insert MyISAM比较适合。
2、InnoDB:支持事务安全的引擎,支持外键、行锁、事务是他的最大特点。如果有大量的update和insert,建议使用InnoDB,特别是针对多个并发和QPS较高的情况。