MySQL 基本操作
创建数据库与用户
create database mydb; create database `my-db`; grant all on mydb.* to newuser@localhost identified by "dbpass" ;
表操作
use mydb; create table tablename( empID TINYINT UNSIGNED NOT NULL AUTO_INCREMENT, firstname VARCHAR(25) NOT NULL, lastname VARCHAR(25) NOT NULL, email VARCHAR(45) NOT NULL, phone VARCHAR(16) NOT NULL, PRIMARY KEY(empID)); --有条件地创建表 create table if not exists tablename(); --显示表结构 describe tablename; desc tablename; --重命名表 rename table tab_aa to tab_bb; --插入数据 insert into employee(firstname, lastname, email, phone) values('phper', 'm', 'phpstone@example.com', '+86 029 88885555'); --查询数据 select * from employee;
修改表结构
--插入字段 ALTER TABLE `employee` ADD `phone` VARCHAR(12) NOT NULL; --修改字段类型 ALTER TABLE `employee` CHANGE `phone` `phone` VARCHAR(16) NOT NULL; --修改字段名称 ALTER TABLE `employee` CHANGE `lastname` `familyname` VARCHAR(25) NOT NULL;
更新表数据
update employee set lastname="Jackson" where firstname='phper';
导入导出数据库
use mydb; --导入.sql 文件 source d:/mysql.sql; load data local infile "D:/mysql.txt" into table mytable; --删除表 drop table mytable; --清空表 delete from mytale; --导出数据库 mysqldump -u root -p db_name > dbname.sql mysqldump -u root -p table_name > table_name.sql
用户权限指派
grant select, insert, update, delete, create, drop on vtdc.employee to joe@10.163.225.87 identified by '123'; --给来自10.163.225.87的用户joe分配可对数据库vtdc的employee表进行select,insert, update, delete, create, drop 等操作的权限,并设定口令为123。 grant all privileges on vtdc.* to joe@10.163.225.87 identified by '123'; --给来自10.163.225.87的用户joe分配可对数据库vtdc所有表进行所有操作的权限,并设定口令为123。 grant all privileges on *.* to joe@localhost identified by '123'; --给本机用户joe分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123。