服务器之家

服务器之家 > 正文

浅析SQL数据操作语句

时间:2020-04-27 15:07     来源/作者:泪洒星辰

SQL 中的运算符

 1算术运算符:

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

2.赋值运算

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

3.比较运算符

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

4.逻辑运算符

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

      使用T-SQL插入数据

1切换数据库,以Myschool为例

Use myschool

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

?
1
select * from student

      新增数据到student表中

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

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

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

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

注意:每一列对应一个值

?
1
2
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

?
1
2
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

?
1
2
select * into studentbak
from student

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

eg:

?
1
2
insert into student
select * from studentbak

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

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

eg:

?
1
2
insert into student
select '何'

        

                             修改表中的数据

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

eg:

?
1
2
update student set studentNo=1,StudentName='泪洒星辰'
where ID='192ABC'

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

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

eg:

?
1
2
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;

标签:

相关文章

热门资讯

沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意
沙雕群名称大全2019精选 今年最火的微信群名沙雕有创意 2019-07-07
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分
玄元剑仙肉身有什么用 玄元剑仙肉身境界等级划分 2019-06-21
男生常说24816是什么意思?女生说13579是什么意思?
男生常说24816是什么意思?女生说13579是什么意思? 2019-09-17
超A是什么意思 你好a表达的是什么
超A是什么意思 你好a表达的是什么 2019-06-06
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情
华为nova5pro和p30pro哪个好 华为nova5pro和华为p30pro对比详情 2019-06-22
返回顶部