MySQL:数据库基本操作

MYSQL

1. 进入mysql数据库

Windows:	mysql -hlocalhost -uroot -pPassword
Linux:     	mysql -u root -p

-h:localhost表示MySQL服务器所在主机地址;
-u:root是mysql用户名;
-p:Password是密码(用户没有设置密码,显示Enter password时,直接回车即可。);

注意:如果你的mysql没有安装在C盘下,你需要先使用 DOS命令进入mysql的安装目录下的bin目录中。
以我的电脑为例,方法如下:输入 D: 进入D盘,在输入 cd D:\Tools\MySQL5.5.25\bin 进入到mysql的bin目录下才可以输入 mysql -hlocalhost -uroot -p

2. 编写 sql 脚本文件

创建表文件:z_createtables.sql

【此表采用 联合主键

create table schedule_info
	(tea_id		varchar(8), 
	 class_id	varchar(8),
	 course_id	varchar(8), 
	 date		varchar(10),
	 primary key (tea_id, class_id, course_id),
	 foreign key (tea_id) references teacher_info(id),
	 foreign key (class_id) references class_info(id),
	 foreign key (course_id) references course_info(id)
	);
	
create table teacher_info
	(id			varchar(8), 
	 name		varchar(40), 
	 dept		varchar(40),
	 post		varchar(40),
	 primary key (id),
	 foreign key (id) references user_info(id)
	);
	
create table class_info
	(id			varchar(8), 
	 name		varchar(40), 
	 room		varchar(20),
	 count		varchar(4),
	 primary key (id)
	);
	
create table course_info
	(id			varchar(8), 
	 name		varchar(40), 
	 type		varchar(20),
	 lesson		varchar(4),
	 primary key (id)
	);

插入数据文件z_insertdatas.sql

insert into teacher_info values ('TN-101', '薛老师', '教学部', '班主任');
insert into class_info values ('UG-1804', 'BC-36', '实训室一', '50');
insert into course_info values ('BC-101', 'C从入门到精通', '基础课', '90');

3. 导入sql文件

进入MYSQL,输入:

>use test;				(先选择要用的数据库,若系统中没有,则自动创建)
> source c:/z_createtables.sql;	
> source c:/z_insertdatas.sql;	 (先导入创建表文件 ,再导入插入文件)

导入之后,可以用 show tables; 查看导入的数据库表。

4. 常用命令

    创建数据库:				GREATE DATABASE 数据库名;
    导入sql文件:			source 文件绝对路径;	
	切换数据库:				use 数据库名;
	显示所有数据库:			show databases;
    显示库中的表:			show tables; 		
    显示数据表的结构:		describe 表名;  或	desc 表名;
    查找信息:				select * from 表名 where 条件;
    插入信息:				insert into 表名(列名1, 列名2) values(value1,value2);
    修改表中的数据:			update 表名 set 列名1=value1 where 条件;
    删除表中数据:			delete from 表名 where 条件;

简单点的条件:列名1=value1 and 列名2=value2

update例子:
1、将 id 为 5 的手机号改为默认的 - : update students set tel=default where id=5;
2、将所有人的年龄增加 1: update students set age=age+1;
3、将手机号为 139 的姓名改为 “小明”, 年龄改为 19: update students setname=“小明”, age=19 where tel=“139”;

5. 概念

  1. 主键:表中经常有一个列或多列的组合,其值能唯一地标识表中的每一行这样的一列或多列称为表的主键,通过它可强制表的实体完整性。当创建或更改表时可通过定义 PRIMARY KEY约束来创建主键。一个表只能有一个 PRIMARY KEY 约束而且 PRIMARY KEY 约束中的列不能接受空值。由于 PRIMARY KEY 约束确保唯一数据,所以经常用来定义标识列。【百度百科】

  2. 联合主键的意义:联合主键就是多个表中的主键联合成一个主键。

    create table schedule_info
    (tea_id varchar(8),
    class_id varchar(8),
    course_id varchar(8),
    date varchar(10),
    primary key (tea_id, class_id, course_id),
    foreign key (tea_id) references teacher_info(id),
    foreign key (class_id) references class_info(id),
    foreign key (course_id) references course_info(id)
    );
    这里 tea_id、class_id、course_id 三者构成联合主键,因为三者都是各自表的主键。根据此表可唯一确定另三个表的一条数据。

  3. 复合主键:复合主键就是一个表中主键由2个及两个以上的字段组成,如ID+name。

    create table class_info
    (id varchar(8),
    name varchar(40),
    room varchar(20),
    count varchar(4),
    primary key (id,name)
    );
    名字会有重复,所有加学号来区分

  4. 联合主键和复合主键区别:联合主键体现在多个表的主键上,复合主键体现在一个表中的多个字段。

  5. 文件后缀含义

    .MYD:表数据文件 (my data)
    .MYI:索引文件   (my index)
    .frm:结构文件
    

安装问题

windows

电脑同时安装两个mysql ,默认公用一个工作目录

linux

查看mysql是否已经启动

  • /etc/rc.d/init.d/mysqld status 或者 ps -aux|grep mysql

启动mysql

  • service mysql start
  • sudo service mysql restart
  • sudo systemctl start mysql.service 使用系统控制启动

查看mysql log日志

  • tail -f mysql/error.log

查看配置文件

  • sudo vim /etc/mysql/my.cnf
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值