青岛李沧建设局网站,unas做网站服务器,旅游景点网站建设,互联网创业项目的效果数据完整性#xff1a;
实体完整性#xff1a;每一行必须是唯一的实体域完整性#xff1a;检查每一列是否有效引用完整性#xff1a;确保所有表中数据的一致性#xff0c;不允许引用不存在的值用户定义的完整性#xff1a;制定特定的业务规则
主键#xff1a;
用于唯…数据完整性
实体完整性每一行必须是唯一的实体域完整性检查每一列是否有效引用完整性确保所有表中数据的一致性不允许引用不存在的值用户定义的完整性制定特定的业务规则
主键
用于唯一标识表中的行数据有一个或多个字段组成具有唯一性不允许取空值NULL一个表里只能有一个主键
数据类型精准数字近似数字字符串二进制字符串日期和时间等等
SQL结构化查询语句
DDL数据定义语言create创建 drop删除 alter修改
DML数据操作语言insert添加update更新 delete删除
DCL数据控制语言select选择 show语句 describe
DQL数据查询语言grant授权 revoke取消授权 commit提交 rollback退回 1查看数据库结构
[rootlocalhost ~]# mysql -u root -ppwd123
mysql show databases;
mysql use mysql
mysql show tables;
mysql describe user;
mysql select * from user\G; 备注
information_schema数据库保存着关于MySQL服务器所维护的所有其他数据库的信息。如数据库名数据库的表表栏的数据类型与访问权 限等performance_schema用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源等待等情况
mysql是 MySQL 服务正常运行所需的数据库其中包含了用户认证相关的表 2.创建及删除数据库和表
1创建新库
mysql create database auth;
2创建新表
mysql use auth;
mysql CREATE TABLE users (user_name CHAR(16) NOT NULL, user_passwd CHAR(48) DEFAULT , PRIMARY KEY (user_name));
备注”DEFAULT“密码默认为空
3删除一个数据表
mysqlDROP TABLE auth.users;
(4)删除一个数据库
mysqlDROP DATABASE auth;
3管理表中的数据记录
1插入数据记录
mysqluse auth;
mysqlINSERT INTO users(user_name,user_passwd) VALUES(zhangsan, PASSWORD (123456));
mysqlINSERT INTO users VALUES(lisi, PASSWORD(654321));
2查询数据记录
mysqlselect * from auth.users;
mysqlSELECT user_name,user_passwd FROM auth.users WHERE user_namezhangsan;
3修改数据记录
mysqlUPDATE auth.users SET user_passwdPASSWORD() WHERE user_name lisi;
mysqlSELECT * FROM auth.users;
mysqlUPDATE mysql.user SET authentication_stringPASSWORD(123457) WHERE userroot;
mysqlFLUSH PRIVILEGES; /
[rootwww ~]# mysqladmin -u root -p123457 password 123456
4删除数据记录
mysqlDELETE FROM auth.users WHERE user_namelisi;
mysqlSELECT * FROM auth.users;
4数据库表高级操作
1克隆表
mysqlcreate table user01 like auth.users; //通过 LIKE 方法复制 users 表生成 tmp 表注意此表为空
mysqlinsert into user01 select * from auth.users; //通过 player 表生成 tmp 表内数据记录
2删除表
mysql delete from user01 where user_namezhangsan;
mysqldelete from user01;
mysqlinsert into user01 select * from auth.users;
mysqltruncate table user01;
mysqlselect count(*) from user01;
备注
编号 姓名 性别
1
2
3
4
5
标识列
truncate和delete的区别
truncate删除表中的内容不删除表结构释放空间
delete删除表中的内容不删除表结构但不释放空间
truncate删除数据后重新写数据会从1开始
delete删除数据后只会从删除前的最后一行续写内存空间上truncate省空间
delete属于DML语句而truncate和drop都属于DDL语句
delete可以在后续加上where进行针对行的删除
truncate和drop后面只能加上表名直接删除表无法where
drop table 表名 删除表内容连带结构一起删除
2临时表
mysqlselect * from mytmp; //查看 mytmp 表是否存在
mysqlCREATE TEMPORARY TABLE mytmp (
id int(10) NOT NULL AUTO_INCREMENT,
NAME varchar(32) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, level int(10) NOT NULL,
PRIMARY KEY (id) ) ENGINEInnoDB DEFAULT CHARSETutf8; //创建临时表
mysql insert into mytmp(name,level) values(aa,10); //插入数据
Query OK, 1 row affected (0.01 sec)
mysqlselect * from mytmp;
mysqlquit //退出当前连接
Bye
mysqlselect * from mytmp; //重新连接 MySQL 之后查看临时表状态
flush privileges;更新权限的相关信息 授权一组权限的集合角色
授权授的是什么是权限吗
1授予权限
mysqlgrant select on auth.* to zhangsan localhost identified by 123456; 本机登录
mysqlgrant select on auth.* to zhangsan 192.168.10.% identified by 123456; 特定网段
mysqlgrant select on auth.* to zhangsan 192.168.10.101 identified by 123456; 指定ip
2查看权限
mysql SHOW GRANTS FOR zhangsanlocalhost;
3验证权限
[rootlocalhost ~]# mysql -u zhangsan -p123456