MySQL数据库起步 关于数据库的基本操作(更新中...)

mysql的基本操作

  • 连接指定的服务器(需要服务器开启3306端口)

    • mysql -h ip地址 -P 端口号 -u 账号 -p 密码
      
  • 删除游客模式

    • mysql -h ip地址 -P 端口号 -u 账号 -p 密码
      
  • 修改root密码(修改之后需要重启mysql服务)

    • 第一种:进入数据库
          #这里的密码设置为123456
          update mysql.user set password=password("123456") where host='localhost';
      第二种:不用进入数据库
      	没有登录修改root密码  第一个root代表的是用户名 123456代表的是旧密码 localhost代表的是域名 	第二个密码代表的是 新密码
      	mysqladmin -u root -p 123456 -h localhost passord "root"
      
  • root 登录下 创建用户

    • grant 权限 on 数据库名.表名 to 用户名@主机名 identified by '密码'
      

数据库的基本操作

	进入数据库
		use 数据库名
	显示所有数据库
		show databases;
	查看当前数据库
		select database()
	创建数据库
		create database 数据库名字 [charset=字符编码]
	查看创建数据库的详细内容
		show create database 数据库名
	删除数据库
		drop database 数据库名字 

数据表的基本操作

	查看已存在的表
		show tables;

	查看创建表的sql
		show create table 表名

	创建数据表
		create teable 表名字(字段,类型,约束,[字段,类型,约束])

	查看数据表结构
		desc 表名

	删除表格
		drop table 表名称

	例,创建数据库
			create table info(
				id int unsigned primary key auto_increment,
				name varchar(20) not null,
				age tinyint not null,
				addr varchar(100) not null,
				gender enum("男","女","保密") default "保密"
				)ENGINE=InnoDB DEFAULT CHARSET=utf8;

数据表记录的基本操作(增、删、改、查)

查看所有的记录
		select * from info;

	插入数据
		insert [into] 表名字 value(字段1,字段2,字段3),(....)
		例:我要插入名字叫张三和王五的这俩条数据
			insert info values(1,"张三",18,"上海","男"),(2,"王五",20,"北京","男");
	根据条件删除记录
		例如 我要删除大于30岁的所有字段
			delete from info where age>30;
	根据条件修改指定的内容
		update [数据库名].表名 set 字段1=新值1,字段n = 新值n where 字段1 = "旧值"
	例如 我想将王五的名字修改成张三的名字
		update info name="张三" where name="王五";

数据表字段的基本操作

	插入表字段
		alter table 表名称 add 字段名 字段类型 约束
		例:我要给info表增加一个字段叫薪资
			alter table info add money int;
	修改表字段类型
		alter table 表名称 modify 字段名 新的类型 约束
		例 我要将薪资改成varchar的类型
			alter table info modify money varchar(100);

	修改表
		alter table 表名称 change 原来的字段名 新的字段名 类型 约束 可以写默认值
		例:我要修改字段薪资为学历
			alter table info change money education varchar(30) not null;
	删除字段
		alter table 表结构 drop 字段名称
		例:我要删除学历这个字段
			alter table info drop education;

数据表的约束

	是否为主键
		primary key
	是否为空
		not null(不为空)
	小整数
		tinyint(0-255)
	是否自动增长
		auto_increment
	枚举
		enum("","","")
	默认
		default ...
	无符号范围
		Unsigned
	decimal 表示小数 (5,2) 一共有5位 2位小数

	创建数据表 加约束
		create table info(
			id int unsigned primary key auto_increment,
			name varchar(20) not null,
			age tinyint not null,
			addr varchar(100) not null,
			gender enum("男","女","保密") default "保密"
			)ENGINE=InnoDB DEFAULT CHARSET=utf8;

如有错误,欢迎留言指出

原文地址:https://www.cnblogs.com/kuck/p/11557882.html