欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

浅析SQL数据操作语句

程序员文章站 2022-05-03 08:05:17
sql 中的运算符  1算术运算符: +:加运算,求两个数或表达式想加的和 -:减运算,求两个数或表达式相减的差 *,乘运算,求两个数或表达式相乘的积...

sql 中的运算符

 1算术运算符:

+:加运算,求两个数或表达式想加的和
-:减运算,求两个数或表达式相减的差
*,乘运算,求两个数或表达式相乘的积
/:除运算,求两个数或表达式相除的商
%:取模运算,求两个数或表达式相除的余数

2.赋值运算

=:把一个数或表达式赋值给另一个标量.

3.比较运算符

=:等于   >大于   < 小于    <>不等于   >= 大于等于   <=小于等于    !=不等于

4.逻辑运算符

and :当且仅当两个布尔表达式为true时,返回true
or:当且仅当两个布尔表达式都为false时,返回false
not对布尔表达式的值取反,优先级别最高

      使用t-sql插入数据

1切换数据库,以myschool为例

use myschool

2.查询表中的数据(*号代表表中所有的列)

select * from student

      新增数据到student表中

01如果要新增全部列,表名后可以不写列名,但是要提供所有列的值

02如果只想给一张表中添加部分列,那么在表名后要跟上列名,并且需要保证除了你给出的列的值之外其他列都允许为空

加入数据到student这张表中student括号后跟的是列名如果列名中有自增列,一定要把自增列删了.

values括号后更的是每一列所对应的值

注意:每一列对应一个值

insert into student(studenttno, loginpwd, studentname, gender, gradeld, phone, address, birthday, email)
values (23214,5634,'泪洒星辰',0,2,5434,'北京市','2015-10-31 09:29:59','lsfjkl')

当student表中有一列为默认值是在values值中一定要加入default

eg:

假如studentname有个默认值则在studentname对应的值为default

insert into student(studenttno, loginpwd, studentname, gender, gradeld, phone, address, birthday, email)
values (23214,5634,default,0,2,5434,'北京市','2015-10-31 09:29:59','lsfjkl')

      一次向一张表中插入多条数据(有三种方案)

方案一:(studentbak)这是一个不存在的表,方案一就相当于把表(student必须存在)表备份一份studentbak

select * into studentbak
from student

方案二:student(目标表)studentbak(已存在的表)就相当于把studentbak表中的数据附加到student表中
--*代表所有的列如果目标表中有自增列,你附加上去会报错,你必须studentbak表中把*号改成具体的每一列,把自增列删除

eg:

insert into student
select * from studentbak

         方案三:如果要新增全部列,表名后可以不写列名,但是要提供所有列的值

如果只想给一张表中添加部分列,那么在表名后要跟上列名,并且需要保证除了你给出的列的值之外其他列都允许为空

eg:

insert into student
select '何' 
        

                             修改表中的数据

update,见到update一定要加where条件(where后的限定条件不能用=和null做对比,必须使用is null)
update后跟表名,set后跟列名,如果有多个列名用逗号分开
where 为限定条件,只修改id=192abc的那一行数据的studentno何studentname两列

eg:

update student set studentno=1,studentname='泪洒星辰'
where id='192abc' 

                          delete删除表中的数据(删除数据的时候会记录日志,id编号不会从1开始)

见到delete一定要加where条件(where后的限定条件不能用=和null做对比,必须使用is null)
delete后跟表名
where后跟的是限定条件,只删除id为192abc的这一行

eg:

delete student
where id='192abc'

                    truncate删除表中的数据(删除数据的时候不会记录日志彻底删除,id编号会从1重新开始)

truncate后不需要跟where条件

下面抽点时间给大家介绍android中使用sql语句操作数据库

数据的增加

1、创建一个sqlite数据的帮助类

sqlitedatabase db = helper.getwritabledatabase();

2、执行sql语句,实现数据的增加

db.execsql("insert into person (name,number) values (?,?)", new object[] { name, number });

3、关闭数据库

db.close();

数据的删除

1、创建一个sqlite数据的帮助类

sqlitedatabase db = helper.getwritabledatabase();

2、执行sql语句,实现数据的修改

db.execsql("delete from person where name=?", new object[] { name });

3、关闭数据库

db.close();

数据的修改

1、创建一个sqlite数据的帮助类

sqlitedatabase db = helper.getwritabledatabase();

2、执行sql语句,实现数据的修改

db.execsql("update person set number=? where name=?", new object[] { newnumber, name });

3、关闭数据库

db.close();

数据的查询

1、创建一个sqlite数据的帮助类

sqlitedatabase db = helper.getreadabledatabase();

2、调用sqlite数据库的帮助类中的rawquery方法查询数据

cursor cursor = db.rawquery("select * from person where name=?", new string[] { name });

3、查询数据库中所有的数据

boolean result = cursor.movetonext();

4、关闭游标工程

cursor.close();

5、关闭数据库

db.close();

6、返回数据库中是否存在需要查询的结果

return result;