由于数据库实验用到了MySQL,这里对如今已经涉及到的MySQL部分操做作一个简单的小结。mysql
上MySQL的官网下载对应本身OS平台的MySQL安装文件,有在线安装和离线安装包两种,因为服务器在国外,若是网络不是太好的话推荐选择离线安装包。
安装的话就不说了,网上教程一大把,我的PC的话,通常选择开发者模式安装就行了。这里主要说一下安装后的配置,给本身作个记录(虽然网上也有不少,可是本身作个总结省得每次都去找)。linux
机器环境: OS: Windows 10(1703) 64bit
第一步:就是配置MySQL的默认字符编码,新版的MySQL的配置文件my.ini不在安装目录下了,而是在“C:\ProgramData\MySQL\MySQL Server 5.7”下,固然这是在个人机器上(我是以默认目录安装的)。sql
[client] default-character-set=utf8 [mysql] default-character-set=utf8 [mysqld] character-set-sever=utf8
第二步:修改数据库存放位置。一样在my.ini下找到[mysqld],而后在这个下方找到basedir和datadir两个选项,其中basedir是你的MySQL的安装位置,datadir就是MySQL的数据库的存放位置了。
若是你使用完整的安装文件安装,切记不要改动basedir,不然你的MySQL服务启动不起来的。固然若是是免安装版,就根据你的实际安装位置更改了。
你能够将数据库的存放位置放到任何你喜欢的位置,而后修改datadir为你肯定的目录便可:数据库
datadir="D:/DevelWorks/MySQL/Data/" 说实话这里有个恼火的地方就是在Windows的环境下有时会由于路径分隔符(/或\)的不一样致使服务启动失败,这个本身多试几回,不一样的环境有多是“/”也有多是“\”。
通常来讲配置这两个就差很少了,若是须要其余配置,看看官方文档就行了。
在Windows下启动MySQL:服务器
以管理员身份打开命令提示符: # net start MySQL57 启动服务 # net stop MySQL57 关闭服务
至于linux下的配置由于没时间也没有去捣鼓,估计配置方式也差很少,不一样的在于配置文件的存放位置。网络
登陆:mysql -uroot -p
回车后会提示你输入密码,正确输入密码后回车就能够登陆了。建议不要在-p参数后面直接写上密码,由于这里是明文显示的。ui
退出:exit;或quit;或\q;编码
注意:每一个MySQL的命令后面都以英文分号(;)结束。code
查看数据库:
show databases;orm
选择(切换)数据库:
use [数据库名];
查看数据表:
show tables;
描述表结构:
describe `表名`;
或:show columns from `表名`;
建立数据库:
create database `database-name`;
删除数据库:
drop database `数据库名`;
建立表:
create table `table-name`(
`column-name`, [data-type], [(表级)完整性约束条件],
.
.
.
[表级完整性约束条件]
);
若是完整性约束条件涉及多个属性列,则必须定义在表级完整性上,不然既能够定义在列级,也能够定义在表级。
删除表:
drop table `表名`;
插入记录(元组):
insert into `表名` values(属性1的值,属性2的值,...,属性n的值);
insert into `表名`(属性1,属性2,...,属性x) values(属性1的值,属性2的值,...,属性x的值);
导入sql文件:
source [文件路径];
查看表内容:
select * from `表名`;(查看全部内容)
select * from `表名` limit n;(仅查看前n条记录)
select `属性1`, `属性2`, ..., `属性n` from `表名`;(查看指定属性列的内容)
更新表:
ALTER TABLE <表名>
[CHANGE COLUMN <列名> <列名> <数据类型> [ <列级完整性约束条件> ] ,]
[ADD COLUMN <列名> <数据类型> [ <列级完整性约束条件> ] ,]
[ADD <表级完整性约束条件> ,]
[DROP COLUMN <列名> ,]
[DROP <完整性约束条件> ]
重命名表:
rename table `old-table-name` to `new-table-name`;
在作实验的时候有时出现"ERROR 1064 (42000)"这个语法错误,上网查了如下,原来是由于可能在SQL语句或者MySQL命令中使用了MySQL中的保留字,从而引起的语法错误,在这种状况下,应将保留字使用符号包含,避免SQL语句的解析出错。所以,在书写SQL语句时,应尽可能将所定义变量(如数据库名字,表名等)使用符号
包含。
TABLE_SCHEMA : 数据库名 TABLE_NAME:表名 ENGINE:所使用的存储引擎 TABLES_ROWS:记录数 DATA_LENGTH:数据大小 INDEX_LENGTH:索引大小 -- SQL: SELECT TABLE_NAME,DATA_LENGTH+INDEX_LENGTH,TABLE_ROWS FROM TABLES WHERE TABLE_SCHEMA='数据库名' AND TABLE_NAME='表名';
【参考】MySQL必知必会。
powered by exRunner If you forward it, please specify the author and source.