编辑: 笔墨随风 | 2019-07-03 |
0 rows affected (0.05 sec) cust_id 主键 创建Orders表,一行一个产品 MySQL基础
6 关于MySQL基础知识 mysql>
CREATE TABLE Orders ->
( order_num int NOT NULL , order_date datetime NOT NULL , cust_id char(10) NOT NULL Query OK,
0 rows affected (0.04 sec) order_num 主键 cust_id 外键,关联 Customers ID OrderItems表 存储每个订单的实际物品. mysql>
CREATE TABLE OrderItems ->
( order_num int NOT NULL , order_item int NOT NULL , prod_id char(10) NOT NULL , quantity int NOT NULL , item_price decimal(8,2) NOT NULL Query OK,
0 rows affected (0.02 sec) order_num 订单号,关联到Orders 表的order_num order_item 订单物品号, prod_id 产品ID quantity 产品数量 item_price 产品的价格 创建 primary key 主键 ALTER TABLE Customers ADD PRIMARY KEY (cust_id);
ALTER TABLE OrderItems ADD PRIMARY KEY (order_num, order_item);
ALTER TABLE Orders ADD PRIMARY KEY (order_num);
ALTER TABLE Products ADD PRIMARY KEY (prod_id);
ALTER TABLE Vendors ADD PRIMARY KEY (vend_id);
MySQL基础
7 关于MySQL基础知识 创建 foreign key 外键,指向另一个表 PRIMARY KEY 主键 ALTER TABLE OrderItems ADD CONSTRAINT FK_OrderItems_Orders FOREIGN KEY (orde 把 OrderItems 表中的 order_num 关联到 Orders 表中的 order_num ALTER TABLE OrderItems ADD CONSTRAINT FK_OrderItems_Products FOREIGN KEY (pr 把OrderItems 表中的 prod_id 关联到 Products 表中的 prod_id ALTER TABLE Orders ADD CONSTRAINT FK_Orders_Customers FOREIGN KEY (cust_id) 把Orders 表中的cust_id 关联到Customers 表中的cust_id ALTER TABLE Products ADD CONSTRAINT FK_Products_Vendors FOREIGN KEY (vend_id 把 Products 表中的vend_id 关联到 Vendors 中的vend_id ``` 表插入表数据直接下载表格的数据,一个表一个表批量插入就行. MySQL基础
8 关于MySQL基础知识 MySQL用户有关命令 进入 mysql -u usename -p password -P 默认3306 mysql -S /tmp/mysql.sock -uroot -h192.168.56.1 -P3306 -p1234567 指定sock登录 \h 获取帮助 \q 退出 or quit 修改msyql密码 $ mysql -u root mysql>
USE mysql;
mysql>
UPDATE user SET authentication_string=PASSWORD( NEWPASSWORD ) WHERE U 创建用户 mysql>
CREATE USER '
test1'
@'
localhost'
identified by '
1234567'
;
Query OK,
0 rows affected (0.00 sec) 查询用户 mysql>
SELECT USER FROM mysql.user;
查询所有用户 mysql>
SHOW GRANTS For root@'
localhost'
;
查询具体某个用户 删除用户 mysql>
DROP USER '
test1'
@'
localhost'
;
Query OK,
0 rows affected (0.01 sec) MySQL基础
9 MySQL用户有关命令 GRANT语句授权用户登录 mysql>
GRANT ALL ON *.* TO '
test1'
@'
192.168.56.1'
IDENTIFIED BY '
1234567'
;
Query OK,
0 rows affected,
1 warning (0.01 sec) 限定IP地址 192.168.56.1登录操作 *. 第一个表示所有数据库,第二个表示所有表 最后是远程密码 具体指定用户可用的语句,限制test1只能用SELECT语句. mysql>
GRANT SELECT ON *.* TO '
test1'
@'
localhost'
identified BY '
1234567'
;
Query OK,
0 rows affected,
1 warning (0.00 sec) mysql>
flush privileges;
刷新权限 Query OK,
0 rows affected (0.00 sec) 查询是否授权成功 mysql>
SELECT * FROM USER WHERE HOST='
192.168.56.1'
\G;
MySQL基础
10 MySQL用户有关命令 基础SQL语句-检索数据 SELECT 语句 是最常用的SQL语句了,用来索引一个或者多个表信息. 关键字(keyword) 作为SQL组成部分的字段,关键字不能作为表或者列的名字. 使用SELECT索引数据,必须至少给出两条信息, 想要什么? 从什么地方获取? 检查单个列 SELECT prod_name FROM Products;