-
Qt/C++ 数据库SQL 增删改查 语句示例
2016-07-10 22:33:17注:文中例子均使用QSQLITE ...一,增 QSqlQuery query;query.prepare(QString("INSERT INTO playList%1(songname,songurl,duration)" "VALUES (:songname, :songurl,:duration)").arg(m_objIndex注:文中例子均使用QSQLITE
一,增
QSqlQuery query;query.prepare(QString("INSERT INTO playList%1(songname,songurl,duration)"
"VALUES (:songname, :songurl,:duration)").arg(m_objIndex));
query.bindValue(":songname", songname);
query.bindValue(":songurl", url);
query.bindValue(":duration", dur);
query.exec();
二,删
QSqlQuery query;
query.prepare(QString("DELETE FROM playlistname WHERE listname = ?"));
query.addBindValue(name);
query.exec();
三,改
query.prepare("update playlistname set listname = ? where listname = ?");
query.addBindValue(newname);
query.addBindValue(oldname);
query.exec();
四,查
QSqlQuery query1(QString("SELECT * FROM playList%1").arg(m_objIndex));
int fieldNo = query1.record().indexOf("songname");
while (query1.next()) {
QString name = query1.value(fieldNo).toString();
list1<<name;
}
mfc的
常用SQL语句 查询语句sql.Format("select * from xsxx where name='%s'",m_user1) 表示从 xsxx表中 选择 name=m_user1这一列 添加语句 sql.Format("insert into xsxx(name,sex,age,num) values('%s','%s','%s','%s')",m_user1,m_user2,m_user3,m_user4); 删除语句 sql.Format("delete from xsxx where name='%s'",m_user); 修改语句 sql.Format("update xsxx set num='%s',age='%s',sex='%s' where name='%s'",m_user4,m_user3,m_user2,m_user1);
-
MySQL数据库连接增删改查sql语句_关于MySQL数据库——增删改查语句集锦
2021-01-27 23:48:19一、基本的sql语句CRUD操作:create 创建(添加)read 读取update 修改delete 删除1、添加数据insert into Info values('p009','张三',1,'n001','2016-8-30 12:9:8') ;给特定的列添加数据insert into Info (code,name)...一、基本的sql语句
CRUD操作:
create 创建(添加)
read 读取
update 修改
delete 删除
1、添加数据
insert into Info values('p009','张三',1,'n001','2016-8-30 12:9:8') ;
给特定的列添加数据
insert into Info (code,name) values('p010','李四');
自增长列的处理
insert into family values('','p001','数据','T001','数据',1);
insert into 表名 values(值)
2、删除数据
删除所有数据
delete from family
删除特定的数据
delete from Info where code='p001'
delete from 表名 where 条件
3、修改数据
修改所有数据
update Info set name='徐业鹏'
修改特定数据
update Info set name='吕永乐' where code='p002'
修改多列
update Info set name='吕永乐',sex=1 where code='p003'
update 表名 set 要修改的内容 where 条件 tno =
4、读取数据
(1)简单读取,查询所有列(*) 所有行(没有加条件)
select * from Info
(2)读取特定列
select code,name,class from Info
(3)条件查询
select * from Info where code='p003'
(4)多条件查询
select * from Info where code='p003' or nation='n002' #或的关系
select * from Info where sex=0 and nation='n002' #与的关系
(5)关键字查询(模糊查询)
查所有包含奥迪的汽车
select * from car where name like '%奥迪%'; #百分号%代表任意多个字符
查以'皇冠'开头的所有汽车
select * from car where name like '皇冠%';
查询汽车名称中第二个字符是'马'的
select * from car where name like '_马%'; #下划线_代表任意一个字符
(6)排序查询
select * from car order by powers #默认升序排列
select * from car order by powers #升序asc 降序 desc
先按brand升序排,再按照price降序排
select * from car order by brand,price desc
(7)范围查询
select * from car where price9()>40 and price<60
select * from car where price between 40 and 60
(8)离散查询
select * from car where price=30 or price=40 or price=50 or price=60;
select * from car where price in(30,40,50,60)取出数据
select * from car where price not in(30,40,50,60)去掉数据
(9)聚合函数(统计查询)
select count(*) from car
select count(code) from car #取所有的数据条数
select sum(price) from car #求价格总和
select avg(price) from car #求价格的平均值
select max(price) from car #求最大值
select min(price) from car #求最小值
(10)分页查询
select * from car limit 0,10 #分页查询,跳过几条数据(0)取几条(10)
规定一个每页显示的条数:m
当前页数:n]
select * from car limit (n-1)*m,m
(11)去重查询
select distinct brand from car
(12)分组查询
查询汽车表中,每个系列下汽车的数量
select brand,count(*) from car group by brand
分组之后,只能查询该列或聚合函数
取该系列价格平均值大于40的系列代号
select brand from car group by brand having(加条件) avg(price)>40
取该系列油耗最大值大于8的系列代号
select brand from car group by brand having max(oil)>8
二、MySql的高级查询(使用外连接)
连接查询
SELECT t1.Name,t2.Brand_Name FROM brand t2,car t1 -- 笛卡尔乘积
WHERE t2.Brand = t1.Brand
-- 多表连接查询
SELECT t1.Name,t2.Brand_Name,t3.prod_name FROM car t1 LEFT JOIN brand t2 ON t1.Brand = t2.Brand
LEFT JOIN productor t3 ON t2.Prod = t3.Prod
-- 联合查询 字段数必须一样
SELECT `Name`,Price FROM car UNION SELECT Brand_Name,Brand_Memo FROM brand
-- 子查询(***)
SELECT * FROM car WHERE car.brand in (SELECT Brand FROM brand WHERE Prod = 'p001')
说明:使用外连接
-
mysql数据库的增删改查sql语句_MySQL数据库增删改查SQL语句
2021-01-19 12:40:45MySQL数据库增删改查SQL语句查看数据库1show databases;使用数据库1use 数据库名;创建数据库1CREATE DATABASE 数据库名;创建表1create table 表名( 列名1 类型(长度) [约束], 列名2 类型(长度) [约束], ……);长度...MySQL数据库增删改查SQL语句
查看数据库1show databases;
使用数据库1use 数据库名;
创建数据库1CREATE DATABASE 数据库名;
创建表1create table 表名( 列名1 类型(长度) [约束], 列名2 类型(长度) [约束], ……);
长度区别
int类型带长度:不影响存取值,即使设定的值超出了长度的范畴,也能存,如果没有达到设定的长度,
则使用空格自动填充到设定的长度
char类型:不可变字符,设定的长度就是规定当前字段能存的数据的最大长度,若超出长度,则会报
错,若没有达到长度,使用空格填充到设定的长度
varchar:可变字符,设定的长度同样是规定当前字段能存的数据的最大长度,若超出长度,则会报
错,若没有达到长度,不会使用空格填充,实际多长就是多长
删除表1DROP TABLE 表名;
表约束
1.非空约束 NOT NULL
2.默认值约束 DEFAULT ‘男’
3.唯一约束 UNIQUE4.主键约束 PRIMARY KEY
查看表结构1DESC 表名
修改表
修改列名1Alter table 表名 change 列名 新列名 类型;
修改列类型1Alter table 表名 modify 列名 新类型;
修改列类型
==============================数据查询=================================
查询表中全部信息1select * from 表名;
查询表中指定列的信息1select 列1,列2 from 表名;
数据去重1select distinct 列…. From 表名;
拼接结果1select concat(列1,列2) from 表名;
运算符优先级:
1.乘法和除法的优先级高于加法和减法
2.同级运算的顺序是从左到右
3.表达式中使用”括号”可强行改变优先级的运算顺序1select 列1[+-*/]列2 from 表名;
设置别名(注意:关键字as可以省略)1
2select 列 as 别名 from 表名;
select 列 别名 from 表名;
语句的执行顺序:from—>select
条件查询1select 列… from 表名 where 条件;
条件中比较运算符:( 等于:= 大于:> 大于等于:>= 小于:< 小于等于:<= 不等于:!= 或 <> )1where 列 比较运算符 值;
注意:字符串、日期需使用单引号括起来
语句的执行顺序:from—>where—>select
逻辑运算符( 并且:and 或 && 或:or 非:not 或 ! )1
2where 条件1 逻辑运算符 条件2;
where not 条件;
范围查询1where 列 between 条件1 and 条件2;
//列在这个区间的值where 列 not between 条件1 and 条件2;
//不在这个区间where !( 列 between 条件1 and 条件2 );
//同样表示不在这个区间
集合查询( 判断列的值是否在指定的集合中 )1where 列 in(值1,值2);
//列中的数据是in后的值里面的where 列 not in(值1,值2);
//不是in中指定值的数据
NULL值查询( 注意:列中值为null不能使用=去查询 )1where 列 is null;
模糊查询
%:表示0到多个字符,示例:1where 列 like '%0';
//表示以0结尾where 列 like ‘0%’;
//表示以0开头where 列 like ‘%0%’;
//表示数据中包含0
_:表示一个字符,可多次使用,示例:1where 列 like '%0_';
//数据结尾第二位是0
结果排序( 对查询出的结果按照一列或多列进行升序还是降序排列 升序:asc 降序:desc 注意:不能使用中文的别名排序)1where 条件 order by 列 [asc/desc]
语句的执行顺序:from—>where—>select—>order by
分页查询( beginIndex:表示从第多少条数据开始 pageSize:表示每页显示的数据条数 )1where [条件] limit beginIndex,pageSize;
ex:每页显示3条数据
第一页: SELECT * FROM 表名 LIMIT 0,3 –0,1,2
第二页: SELECT * FROM 表名 LIMIT 3,3 –3,4,5
第三页: SELECT * FROM 表名 LIMIT 6,3 –6,7,8
第四页: SELECT * FROM 表名 LIMIT 9,3 –9,10,11
……
第七页: SELECT * FROM 表名 LIMIT 18,3 –18,19,20
beginIndex公式:(当前页数-1)*pageSize
聚集函数( 作用于一组数据,并对一组数据返回一个值 )
COUNT:统计结果记录数,若统计的是列,列中为Null,那么count将不会计算值
MAX: 统计计算最大值
MIN: 统计计算最小值
SUM: 统计计算求和
AVG: 统计计算平均值
分组函数( 注意:如果要对分组后的数据进行筛选,那么必须使用having关键字,条件写在having后 )1select 聚集函数 from 表名 where [条件] group by 列 having 分组后的条件
语句的执行顺序:FROM—> WHERE—>group by—->Having—>SELECT–>ORDER BY
Where和having的区别:
Where: 先过滤已有的数据(数据是已经存在的),在进行分组,在聚集计算
Having:先分组,在对每组进行计算,根据得到结果在过滤(分组把数据算出之后,在过滤)
注意:使用having的时候,它是可以使用别名的
===============================数据查询-多===============================
交叉连接:又名笛卡尔积,使用交叉连接会产生笛卡尔积
假设集合A={a, b},集合B={0, 1, 2},则两个集合的笛卡尔积为{(a, 0), (a, 1), (a, 2), (b, 0), (b, 1), (b, 2)}。1select * from 表1,表2
内连接:过滤为空的数据(查询的实际上是两张表数据的交集部分) 目的 ==》解决笛卡尔积现象,正确查询了需要的数据1select * from 表1,表2 where 表1.字段=表2.字段;
//隐式内连接,使用where条件消除笛卡尔积1select * from 表1 [inner] join 表2 on 表1.字段=表2.字段;
//显式内连接,如果是多张表,则一直在join..on后依次添加join..on即可,inner关键字可被省略
外连接:左外连接、右外连接、全外连接
左外连接:以左边表为主,返回左边表中所有数据,若右表中无数据,则显示为NULL,请参考实际查询结果来理解1select * from 表1 left [outer] join 表2 on 表1.字段=表2.字段;
//表1为左表,表2为右表,outer关键字可被省略
右外连接:以右边表为主,返回右表中所有数据,若左表中无数据,则显示为NULL,结合实际查询结果来理解1select * from 表1 right [outer] join 表2 on 表1.字段=表2.字段;
//表1为左表,表2为右表,outer关键字可被省略
全外连接:返回涉及的多表中的所有数据,MYSQL中不支持该查询,仅限了解自连接:单表当作多表查询,直白的讲就是一张表中数据含有多种关系,使用多表查询的语法,来查询一张表,查询过程一定要使用别名
多用在分类数据、省市县分类数据、权限…1select 表1.字段1,表2.字段2 from 表名 as 表1,表名 as 表2 where 表1.字段1=表2.字段2
子查询:将一个查询结果作为另一个查询的对象,直白的讲就是SQL语句嵌套1select * from (select * from 表名) as 别名select * from where 条件
//条件中包含查询语句
注意:1.查询结果的虚拟表必须取别名
2.字段与关键字一样,冲突时,需要给字段名加``,(Esc键下面、1的左边)
3.如果给虚拟结果表中的字段取了别名,则对虚拟结果表查询时,应该用 表别名.虚拟表字段别名
===============================插入数据===============================1insert into 表名(字段1,字段2..) values(值1,值2…);
注意: 1.如果插入的表中的主键是自增类型的,可以不用插入值
2.如果主键是非自增 ,插入的数据则是填补主键字段值空余的值
3.如果主键设置了自动递增,会从主键字段最大值开始插入数据
其他插入方式:1insert into 表名(字段1,字段2) values(值1,值2),(值1,值2);
//插入多条数据【MYSQL】insert into 表名 values(值1,值2);
//针对全表所有字段进行插入操作insert into 表名(字段) select 字段 from 表2;
//查询结果插入insert into 表名 select 字段 from 表2;
//查询结果,全表插入
===============================修改数据===============================1update 表 set 字段=值 where 条件;
//带条件修改指定数据,否则修改全表
===============================删除数据===============================1delete from 表 where 条件;
//删除数据带条件指定数据,否则删除全表数据
===============================数据备份===============================
在命令行窗口进行,若操作系统版本高,则使用管理员模式
导出:
mysqldump -u账户 -p密码 数据库名称>脚本文件存储地
ex: mysqldump -uroot -proot jdbcdemo> C:/shop_bak.sql
导入:
mysql -u账户 -p密码 数据库名称< 脚本文件存储地址
ex: mysql -uroot -proot jdbcdemo< C:/shop_bak.sql
使用可视化导入导出:
Navicat工具的导入和导出/Navicat工具的备份和还原
===============================数据索引===============================
索引的作用相当于图书的目录,可以根据目录中的页码快速找到所需的内容。
什么列适合建索引??
1.表的主键、外键必须有索引;
2.数据量超过30000的表应该有索引;
3.经常与其他表进行连接的表,在连接字段上应该建立索引;
4.经常出现在Where子句中的字段,特别是大表的字段,应该建立索引;
5.索引应该建在选择性高的字段上;
6.索引应该建在小字段上,对于大的文本字段甚至超长字段,不要建索引;
sql语句创建和删除索引:
创建索引:
CREATE INDEX 索引名称 ON 表名 (列名)
删除索引:
方式一:
insert into 表名(字段1,字段2) values(值1,值2),(值1,值2);
update 表 set 字段=值 where 条件;
delete from 表 where 条件;
DROP INDEX 索引名 ON 表名
方式二:
ALTER TABLE 表名 DROP INDEX 索引名
× 请我吃糖~
-
mysql数据库增删改查关键字_MySQL数据库(增删改查语句)
2021-01-18 21:26:26MySQL数据库(增删改查语句)一.登录数据库:----> mysql -uroot -proot;(对应用户名和密码)二.SQL语句: 数据定义语言DDL 用来定义数据库、表、列,关键字为 create、alter、drop 数据操作语言DML 用来进行数据库...MySQL数据库(增删改查语句)一.登录数据库:----> mysql -uroot -proot;(对应用户名和密码)二.SQL语句: 数据定义语言DDL 用来定义数据库、表、列,关键字为 create、alter、drop 数据操作语言DML 用来进行数据库更新的操作,关键字为 insert、delete、update 数据控制语言DCL 用来定义数据库的访问权限,安全级别的。 数据查询语言DQL 用来查询数据库中表的记录,关键字为select、from、where三. 1.使用数据库: use 数据库名; 2.改编码格式:set names gbk; 3.主键约束: 特点:非空,只用于表示当前的记录 id int primary key; 4.主键自动增长: 主键字段后加 auto_increment 只适用于MySQL 5.不能插入中文数据的问题: set names gbk;四:增删改查:*****增:创建 1.创建一个数据库:create database 数据库名; 2.创建一个表: create table 表名(字段名 类型(长度),(字段名 类型(长度),...); eg: create table user(sid int (12), sname varchar(50),...); 3.添加信息:insert into 表名 values ( , , ); eg: insert into user values (1,‘张三‘,22); 数据表添加数据: 4.向表中插入数据: insert into 表名(列名1,列名2,...) values (值1,值2...);删: 1.删除数据库:drop database 数据库名; 2.删除主键: alter table 表名 drop primary key; 3.删除表: drop table 表名; 4.删除数据: delete from 表名 where 条件; 表数据清空:delect from 表名; 改: 1,修改表的结构: 添加列:alter table 表名 add 列名 类型(长度) 约束; 修改列的类型:alter table 表名 modify 列名 类型(长度); 修改列名: alter table 表名 change 旧列名 新列名 类型(长度); 删除列: alter table 表名 drop 列名; 修改表名: rename table 表名 to 新表名; 修改表的字符集: alter table 表名 character set 字符集; 2.更新数据: update 表名 set 字段名 = 值,字段名= 值; ------改全部; update 表名 set 字段名 = 值 where 条件;查: 1.查看全部数据库:show databases(); 2.查看正在使用的数据库: select database(); 3.查看数据库中的表:show table; 4.查看表中所有的内容:select * from 表名; 5.查看数据类型:desc 表名; 6.查看数据库中的表:show; 7.查看结构: desc 表名; 8.distinct 重复的,只显示一次 select distinct sname from 表名; 9.排序查询: order by 列名; ----asc升序,desc降序 select * from 表名 order by 列名 asc; select * from 表名 order by 列名 desc; 10.聚合函数: count 对表中的数据个数求和 select count * as ‘总数‘ from 表名; 11.模糊查询 select * from 表名 where sname like "%具体关键字%";//查看带有此关键字的信息 select * from 表名 where sname like "____";//几个_就显示出sname中相应字数的值 select * from 表名 where sname like "_____"; select * from 表名 where sname is not null;//查看sname信息不为空的所有信息 12.条件查询: select * from 表名 where sname=‘吃饭支出‘;//查找sname中所有的‘吃饭支出‘的行 select * from 表名 where money>=1000;//查找钱数大于等于1000的行 select * from 表名 where money BETWEEN 100 AND 1000;查找100到1000之间的行
-
增删改查sql语句_sql数据库信息增删改查的条件语句
2021-01-27 20:00:54源 /php中文网 源 /www.php.cn本篇文章主要给大家总结介绍关于数据库的增删改查语句。大家应该都知道SQL 是用于访问和处理数据库的标准的计算机语言。它主要有哪些作用呢?可以向数据库进行查询、可以向数据库插入... -
mysql增删改查sql语句_sql增删改查语句是什么?
2021-01-30 10:31:54sql中增删改查语句:1、“INSERT INTO”语句,用于...sql中的增删改查语句是用来对数据库中数据进行操作的,所以我们这篇文章就来看一下SQL增删查改语句的具体写法。一、SQL语句之增INSERT INTO 表名 VALUES (值1,.... -
MySQL数据库(增删改查语句)
2019-03-29 22:19:00MySQL数据库(增删改查语句)一.登录数据库:----> mysql -uroot -proot;(对应用户名和密码)二.SQL语句: 数据定义语言DDL 用来定义数据库、表、列,关键字为 create、alter、drop 数据操作语言DML 用来进行数据库... -
c语言 oracle 增删改查语句_SQL注入——数据库增删改查语句
2020-12-28 13:50:40那这就需要用到我们sql语句了。我们需要用这些语法去操作数据库。Sql,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据和查询,更新还有管理数据库,它分为三类:1、 DDL数据定义语言 ... -
SQL Server 数据库增删改查语句
2018-07-19 16:24:12SQL Server 数据库增删改查语句 在使用SQL Server的时候,需要在新建查询中简单的处理数据库,下面介绍一下SQL基础的增删改查语句: 介绍下面用到的变量: Table:数据库表名 Column::字段 Content:内容 1、SQL... -
数据库授予用户增删改查的权限的语句_SQL注入——数据库增删改查语句
2021-01-13 10:46:04那这就需要用到我们sql语句了。我们需要用这些语法去操作数据库。Sql,是一种特殊目的的编程语言,是一种数据库查询和程序设计语言,用于存取数据和查询,更新还有管理数据库,它分为三类:1、 DDL数据定义语言 ... -
安卓增删改查用sql语句号码_Android SQL语句实现数据库的增删改查
2020-12-22 07:12:07本文介绍android中的数据库的增删改查复习sql语法:* 增insert into info (name,phone) values ('wuyudong','111')* 删delete from person where name = 'wuyudong'* 改update person set number='119' where name='... -
数据库SQL常用增删改查语句
2019-02-13 20:36:001:连接数据库 conn.php文件 <?php // 连接到 数据库 $servername = "域名和端口号"; $username = "root"; $password = "自己的数据库密码"; $dbname = "数据库名"; // 创建连接 $conn = ... -
数据库 SQL基本增删改查语句
2018-08-03 10:18:08添加 insert into empolyee (name,sex,age) values ('李四','男',21) inset into 表名 (列名) values (对应数据) 删除 delete from empolyee where id=2 delete from 表名 where 条件 (and 并且 or或者 between ... -
mysql数据库的增删查_MySQL数据库增删改查SQL语句
2021-01-28 03:16:441.创建数据库1create database 数据库名;2.查看数据库1show databases;3.使用数据库1use 数据库名;4.删除数据库1drop database 数据库名;5.创建表1create table 表名 ( 列名1 类型(长度) [约束], 列名2 类型(长度) ... -
php操作mysql数据库的增删改查语句
2020-10-19 08:55:34连接数据库 ...or die('连接失败'); 连接的数据库库名,后面是连接数据库的函数 mysql_select_db('web_ssh',$conn) or die...mysql_query($sql):这个函数是执行mysql语句,得到结果集; mysql_num_rows(结果集):返回受mysql_ -
数据库授予用户增删改查的权限的语句_关于sql数据库信息增删改查的条件语句分别怎么写?(示例)...
2020-12-22 11:20:57本篇文章主要给大家总结介绍关于数据库的增删改查语句。大家应该都知道SQL 是用于访问和处理数据库的标准的计算机语言。它主要有哪些作用呢?可以向数据库进行查询、可以向数据库插入数据、可以更新数据库中的数据、... -
安卓增删改查用sql语句号码_用SQL语句随便写一条数据库增删改查语句
2020-12-31 01:52:58展开全部一、62616964757a686964616fe58685e5aeb931333365653163增:有2种方法1.使用insert插入单行数据:语法:insert [into] [列名] values 例:insert into Strdents (姓名,性别,出生日期) values ('王伟华','男'... -
SQL增删改查语句
2019-08-19 19:57:35--查询语句 (注意查看当前数据库是否是要查询的数据库) select * from stuInfo 插入数据 --单行插入 insert into stuInfo(stuId,stuName) values(1001,'aaa') insert into stuInfo(stuId,stuName,stuAddr) v... -
jdbc对mysql的增删改查语句_使用JDBC对数据库进行增删改查
2021-01-19 05:13:08在用Java对数据库进行链接的时候我们需要运用到面向对象的方法,将数据库中的信息封装成一个对象,下面进行演示:建立与员工表相对应的emp类package day02;import java.io.Serializable;import java.sql.Date;public... -
sql删除语句一行数据_sql数据库信息增删改查的条件语句
2020-12-09 17:17:14源 /php中文网 源 /www.php.cn本篇文章主要给大家总结介绍关于数据库的增删改查语句。大家应该都知道SQL 是用于访问和处理数据库的标准的计算机语言。它主要有哪些作用呢?可以向数据库进行查询、可以向数据库插入... -
SQL数据库 增删改查基础语句
2020-08-25 10:48:55**********************DDL语句********************* (DDL是数据定义语言的缩写,简单的说,就是对数据库内部的对象进行创建、删除、修改等操作的语言。) 命令结束符,用“;”或“\g”结束 ***************... -
数据库基础增删改查sql语句
2018-10-11 10:00:46创建数据库: create database dbname 删除数据库: drop database dbname 创建表: create table tname() //括号里面是自己需要的各种参数 删除表: drop table tname 插入: insert into tname... -
c#操作数据库的增删改查语句及DataGridView简单使用
2018-06-06 16:26:00一、定义连接字符串,用来链接SQL Server string str_con = "server=.(服务器名称一般为 . );database=WordBook(数据库名称);uid=sa(服务器登录名);pwd=123(服务器密码)"; 二、有了链接字符串之后,开始数据库操作...