linux进入mysql查询彪哥,MySQL数据库语法的初步了解
基础的SQL语句
1.1. 插入语句
数据的增加
insert into 表名(列名列表) values (列值列表)
insert into tb_head_line
(line_name,line_link,line_img,priority,enable_status,create_time,last_edit_time)
values('小米8','http://www.baidu.com','image/xiaomi8.jpg',5,1,now(),now());
insert into tb_head_line(line_name,line_link,line_img,priority,enable_status)
values('苹果6','http://www.baidu.com','image/xiaomi8.jpg',6,1);
1.2. 删除数据库中的数据
数据库中数据的删除(没有被从表中的数据引用)
delete from 表名 where 条件
##删除主键为17的数据
delete from tb_head_line where line_id =17;
##多条件删除 删除 名称是小米的 或者 连接是百度
delete from tb_head_line
where line_name like '%小米%' or line_link like '%baidu%'
##删除已被从表引用的数据(删除区域表中的数据)
delete from tb_area where area_id =2;
insert into tb_area (area_name,priority) values('学府路',3);
1.3. 修改表中的数据
update 表名 set 列名1=新列值,列名2=新列值 ,... where 条件
##更新 把名称等于4的连接地址修改为www.sina.com
##,并设置为不可用,并修改最后的修改时间,把名称修改为奥克斯空调
update tb_head_line set line_name='奥克斯空调',enable_status='0',
line_link="http:www.sina.com",last_edit_time=now()
where line_name = '4'
1.4. 查询的方法
1.4.1. 单表查询
select * from 表名 效率低
select 列名列表 from 表名 where 条件
##查询语句 查看 '奥克斯空调'的详细信息
select * from tb_head_line where line_name='奥克斯空调';
1.4.2. 多表查询
1.4.2.1. 条件子查询
Select 列名 from 表名 where 列名 = (select 列名 from 表名 where 条件)
##查看'暴漫奶茶店'下有那些产品类别
select * from tb_product_category where shop_id = (
select shop_id from tb_shop where shop_name='暴漫奶茶店')
1.4.2.2. 多个表的结果查询
同时查询多个表的数据
Select 表一.列1,表一.列2,...,表二.列1,表二.列2 from 表一,表二 where 表一和表二关系 +其它条件
##查询商品类型以及对应的店铺信息
select tpc.product_category_name ,tp.shop_name ,tp.shop_desc
from tb_product_category tpc, tb_shop tp where tpc.shop_id = tp.shop_id;
作业
/*
上机作业:
在tb_area 表中插入一条记录
在tb_product 表中插入一条记录
修改tb_product中的记录如下
修改编号是6号的产品,名称是农夫山泉矿泉水,默认价格5元
修改 彪哥大排档 店的地址为 :海淀区学府路科技大学北门
删除:由于’奶茶来了’店铺经营不善,需要关闭
查找 电话为:1211334565的店铺信息
电话为:1211334565的店铺主人信息
电话为:1211334565的店铺信息以及店铺经营的产品信息
创建JAVA程序,利用JDBC技术,读取数据库中 东苑路附近的商家的信息
*/
##Navicat for MySQL 中的查询编辑器
##在tb_area 表中插入一条记录
INSERT INTO tb_area(area_id, area_name, create_time, last_edit_time)
VALUES (5,'机电楼',NOW(),NOW());
##在tb_product 表中插入一条记录
INSERT INTO tb_product(product_id, product_name, product_desc, create_time, last_edit_time, shop_id)
VALUES (13,'易寒牌薯片','相当好吃',NOW(),NOW(), 28);
##修改tb_product中编号是6号的产品,名称是农夫山泉矿泉水,默认价格5元
UPDATE tb_product set product_name = '农夫山泉矿泉水', normal_price = '5' WHERE product_id = 6;
##修改tb_shop中 彪哥大排档 店的地址为 :海淀区学府路科技大学北门
UPDATE tb_shop set shop_addr = '海淀区学府路科技大学北门' WHERE shop_name = '彪哥大排档';
##删除:由于’奶茶来了’店铺经营不善,需要关闭
DELETE FROM tb_shop WHERE shop_name = '奶茶来了';
##查找 电话为:1211334565的店铺信息
SELECT * FROM tb_shop WHERE phone = '1211334565';
##查找 电话为:1211334565的店铺主人信息
SELECT * FROM tb_person_info WHERE user_id =
(SELECT owner_id FROM tb_shop WHERE phone = '1211334565');
##查找 电话为:1211334565的店铺信息以及店铺经营的产品信息
SELECT ts.shop_name, tp.product_name, tp.product_desc, tp.normal_price FROM tb_shop ts, tb_product tp WHERE ts.phone = '1211334565';
##查找 读取数据库中 东苑路附近的商家的信息
SELECT ts.shop_name, ts.shop_desc, ts.shop_addr, ts.phone FROM tb_shop ts WHERE ts.area_id =
(SELECT area_id FROM tb_area WHERE area_name = '东苑');
结果:
在Navicat中:东苑路附近的商家的信息
//eclipse-jee中的代码
package com.oracle.test;
import java.sql.*;
public class JdbcTest {
public static void main(String[] args) {
try {
//1 load
Class.forName("com.mysql.jdbc.Driver");
//2 acquire connection
String url = "jdbc:mysql://localhost:3306/o2o?useUnicode=true&characterEncoding=utf8";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
//3 acquire sql
String sqlStr = " SELECT ts.shop_name, ts.shop_desc, ts.shop_addr, ts.phone FROM tb_shop ts WHERE ts.area_id = (SELECT area_id FROM tb_area WHERE area_name = '东苑')";
PreparedStatement pstmt = conn.prepareStatement(sqlStr);
//4 execute
ResultSet rst = pstmt.executeQuery();
//5 manage
System.out.println("店名\t店描述\t店地址\t店电话");
while(rst.next()) {
String name = rst.getString("shop_name");
String desc = rst.getString("shop_desc");
String addr = rst.getString("shop_addr");
String phone = rst.getString("phone");
System.out.println(name + "\t" + desc + "\t" + addr + "\t" + phone);
}
// close
rst.close();
pstmt.close();
conn.close();
}catch(Exception ex) {
ex.printStackTrace();
}
}
}
结果:
利用JDBC技术,读取数据库中 东苑路附近的商家的信息
讲师的演示代码
package com.oracle.test;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.util.Scanner;
public class JdbcAddTest {
public static void main(String[] args) {
try{
//加载驱动
Class.forName("com.mysql.jdbc.Driver");
//获取连接 ?useUnicode=true&characterEncoding=utf8
String url="jdbc:mysql://localhost:3306/o2o";
String username = "root";
String password="123456";
Connection conn = DriverManager.getConnection(url,username,password);
//获取执行对象
String sqlStr="insert into tb_person_info(name,profile_img,email,gender,enable_status,user_type,create_time,last_edit_time)values(?,?,?,'1','1','1',now(),now())";
PreparedStatement pstmt = conn.prepareStatement(sqlStr);
Scanner scanner = new Scanner(System.in);
System.out.println("请输入姓名:");
String xm = scanner.next();
System.out.println("请输入头型:");
String tx = scanner.next();
System.out.println("请输入邮箱:");
String yx = scanner.next();
pstmt.setString(1, xm); //设置第一个问号的值
pstmt.setString(2, tx); //设置第二个问号的值
pstmt.setString(3, yx); //设置第三个问号的值
//执行
int num = pstmt.executeUpdate();
System.out.println("添加的结果:" + num);
//关闭
pstmt.close();
conn.close();
}catch(Exception ex){
ex.printStackTrace();
}
}
}
作者:dfface
linux进入mysql查询彪哥,MySQL数据库语法的初步了解相关推荐
- mysql 查询时间转换_数据库查询时日期的转换
首先简单说明一下,laravel框架中查询并打印sql语句的办法,不管任何时候由于sql语句报错时,都可以先打印一下,分析一下是什么原因造成的错误 ①引入laravel框架DB类useIllumina ...
- java mysql 查询_java连接mysql数据库达成数据查询详细教程
前言:本篇文章适用于所有前后端开发者 众所周知,只要是编程,那肯定是需要存储数据的,无论是c语言还是java,都离不开数据的读写,数据之间传输不止,这也就形成了现代互联网的一种相互存在关系! 而读写存 ...
- mysql查询这一周数据库_mysql如何查询当前时间是星期几?
select date_format(curdate(),'%w') from dual; 更多参考: MySQL中DATE_FORMAT(date, format)函数可根据format字符串格式化 ...
- mysql 查询语句 in,Mysql IN语句查询
语法: WHERE column IN (value1,value2,...) WHERE column NOT IN (value1,value2,...) 1.in 后面是记录集,如: selec ...
- jmeter mysql查询结果提取_Jmeter-从数据库中获取数据并作为变量使用
一.导入数据库驱动包: (1).在网上搜索下载数据库驱动包(MySQL的地址https://dev.mysql.com/downloads/file/?id=480090) (2).解压,获取到jar ...
- linux进行MySQL查询_linux下mysql Select查询命令
linux下mysql Select查询命令 SELECT查询格式: SELECT 字段 FROM 表 WHERE 条件; 例如: SELECT * FROM 表名; #查询表所有 ...
- linux mysql 查询慢_linux – MySQL非常简单的SELECT查询速度极慢
我们有一个在虚拟机上运行的简单Web应用程序,它使用InnoDB引擎将其数据保存在 MySQL 5.5数据库中.一切都运作良好大约三年,但突然变得非常缓慢. 例如,我有一个非常简单的表保存地址: CR ...
- beego原生mysql查询_go——beego的数据库增删改查
一直都不理解使用go语言的时候,为什么还要自己去装beego,以为使用go便可以解决所有的问题,结果在朋友的点拨下,才意识到: go与beego的关系就好比是nodejs与thinkjs的关系,因此也 ...
- mysql查询低效语句_MySQL数据库中查找执行从命慢的SQL语句
MySQL数据库中查找执行从命慢的SQL语句 (2011-09-15 08:21:35) 标签: 杂谈 去历:赛迪网 做者:Alizze 启动Mysql时减参数--log-slow-queries去挤 ...
最新文章
- 人脸对齐端到端Super-FAN
- 循环查询sql带逗号(,)分隔的数据 以及一对多数据转化为逗号(,)分割数据...
- HDU 5214 Movie【贪心】
- SAP MM模块的预留详解
- 文件写入的6种方法,这种方法性能最好
- 灵魂一问-如何彻底防止APK反编译?成功定级腾讯T3-2
- java实现删除指定指定目录下面指定某种类型的文件
- 大名鼎鼎的电影胶片滤镜--DxO FilmPack 5 mac
- python迭代器与生成器_python的迭代器与生成器实例详解
- php正则表达式 什么,php正则表达式是什么?(代码实例)
- max日期最大值为0_【SQL】SQL面试50题思路解答与分类整理(下)CASE与日期函数...
- delphi 消息列表中文说明
- PowerShell: 如何使用powershell处理Excel
- visionman-visionpro培训大纲
- GPU、CPU、内存、文件流、磁盘的速度之比
- Word毕业论文排版 公式居中 编号右对齐 及交叉引用(使用MathType公式编辑器实现)
- 智慧灯杆解决方案之智慧景区建设
- R语言批量读取写入Excel数据 r导出输出写入excel多个sheet 导出excel 导入 excel 读入excel 表格
- 手冢国光对战幸村精市,谁才是最强初中生?
- latex参考文献中修改指定作者的格式来突出显示
热门文章
- 《北上广深杭》都有哪些最值得加入的互联网大厂
- 纯天然的野菜居然会致癌?
- deepin、dde的历史起源与发展(附deepin所有版本的dde截图)
- 用一年时间读一本英文版书籍
- 软件自动化测试培训内容,软件自动化测试与持续集成实践培训方案
- 由浅入深理解latent diffusion/stable diffusion(1):写给初学者的图像生成入门课
- Vue ElementUI el-carousel 走马灯 指示灯样式修改
- git stash 压栈
- ubuntu解压rar文件、zip文件乱码
- 【手把手】教你安装最新IDEA绿色版开发工具(以2021.1.2版本为例)