指尖上的数据库之探囊取物
上回讲了数据库的一些基础的概念和怎么去创建数据库,但都是一些简单的鼠标操作那怎么不用鼠标就能操作数据库呢?
今天我就来教大家用代码来操作数据库!
1.往数据库插入一条数据:
语法: insert into 表名(列名)
values (值)
举例:
insert into Student (ID,Name) values (1,'小明')
注意:
1.如果列中包含标识列则不能赋值
2.值的个数数据类型必须与列一致
3.如果要给所有列赋值则列名可以省略,但要保证不赋值的列没有非空约束,切必须用default代替
2.往数据库插入多条数据
现在我们已经知道了怎么往数据库中仍一条数据,但是如果要往数据库中扔入多条数据时该怎么办呢?
你可能会说:"我把上一条语法多写几遍不就行了"就像这样:
insert into student (ID,name) values (1,'小明') insert into student (ID,name) values(2,'小红')
没错,这样也确实可以,但是代码量会很多我这里有三种更好的方法
1.insert into 目标表表名(必须事先存在)
select * from 原始表表名
如:
insert into student select * from computer
2.select into 目标表表名(必须事先不存在)
from 原始表表名
如:
select into studentbak from student
3.insert into 目标表表名(列名)
select 值 union
select 值 union
select 值 union
......
如:
insert into student(ID,name) select 3,'小军' union select 4,'小黄'
3.delete 删除数据
语法: delete from 表名
where 条件表达式
举例:
delete fron student where ID=1
注意:
1."where 条件表达式"可以省略,如果省略则删除所有行
2,用delete删除时会记录日志,可以根据日志再将数据恢复出来
4. truncate 删除数据
语法: truncate table 表名
举例:
truncat table student
注意:
1.truncate 后不能跟where条件
2,truncate 删除数据时不会记录日志,无法恢复数据
5. 更新数据
语法: update 表名 set 列名=更新值
where 条件表达式
举例:
update student set name='小军' where ID=1
6.order by 对结果集进行排序
order by 可以对显示的结果集进行升序(asc)或降序(desc)排序
如:按学生的年龄进行升序排序的T-SQL语句如下:
1 select * from student 2 order by age asc
其中asc可以省略,但如果是降序的话desc则不能省略
如:按学生的年龄进行降序排序的T-SQL语句如下:
1 select * from student 2 order by age desc
7.在查询中使用别名
as 关键字可以在查询中使用别名T-SQL语句如下:
1 select age as 年龄 2 from student
8.SQL Server内部函数
SQL Server 提供了一些内部函数,每个函数都实现不同的功能,不同类别的函数都可以和select、update、insert语句联合使用
常用的有四类函数,分别是字符串函数、日期函数、数学函数、系统函数
字符串函数:
函数名 描述
charindex 用来寻找一个指定字符串在另一个字符串中的起始位置
len 返回传递给它的字符串长度
upper 把传递给它的字符串全部转换为大写
ltrim 清除字符左边的空格
rtrim 清除字符右边的空格
right 从字符串右边返回指定数目的字符串
replace 替换一个字符串中的字符
stuff 在一个字符串中,删除指定长度的字符,并在该位置插入一个新的字符串
日期函数:
函数名 描述
getdate 取得当前的系统日期
dateadd 将制定的数值添加到指定的日期部分后的日期
datediff 两个日期之间的制定日期部分的间隔
datename 日期中指定部分的字符串形式
datepart 日期中指定部分的整数型式
数学函数:
函数名 描述
rand 返回0到1之间的随机float值
abs 取数值表达式的绝对值
ceiling 向上取整
floor 向下取整
系统函数:
函数名 描述
convert 用来转变数据类型
好了以上就是用代码对数据库进行的一些简单的操作,赶紧练练吧!