当前位置 : 主页 > 网络编程 > 其它编程 >

SqlServer数据库知识点笔记

来源:互联网 收集:自由互联 发布时间:2023-07-02
1.主键约束:要对一个列加主键约束的话,这列就必须要满足的条件就是非空因为主键约束:就是对一个列进行了约束,约束为(非空、不重复)以下是代码要对一个列加主键,列名为
1.主键约束:要对一个列加主键约束的话,这列就必须要满足的条件就是非空因为主键约束:就是对一个列进行了约束,约束为(非空、不重复)以下是代码要对一个列加主键,列名为id,表名为em

1.主键约束:要对一个列加主键约束的话,这列就必须要满足的条件就是非空因为主键约束:就是对一个列进行了约束,约束为(非空、不重复)以下是代码   要对一个列加主键,列名为id,表名为emp

格式为:alter table 表格名称 add constraint 约束名称 增加的约束类型 (列名)

例子:alter table emp add constraint ppp primary key (id)

2.check约束:就是给一列的数据进行了限制比方说,年龄列的数据都要大于20的表名(emp) 列名(age)

格式:alter table 表名称 add constraint 约束名称 增加的约束类型 (列名)

例子:alter table emp add constraint xxx check(age>20)

3.unique约束:这样的约束就是给列的数据追加的不重复的约束类型

格式:alter table 表名 add constraint 约束名称 约束类型(列名)比方说可以给ename列加个unique,让ename列的数据不重复例子:alter table emp add constraint qwe unique(ename)

4.默认约束:意思很简单就是让此列的数据默认为一定的数据

格式:alter table 表名称 add constraint 约束名称 约束类型 默认值) for 列名

比方说:emp表中的gongzi列默认为10000

alter table emp add constraint jfsd default 10000 forgongzi

5.外键约束:这个有点难理解了,外键其实就是引用因为主键实现了实体的完整性,外键实现了引用的完整性,应用完整性规定,所引用的数据必须存在!

其实就是个引用,比方说一个表名称叫dept 里面有2列数据 一列是ID一列是ENAMEid:表示产品的编号ename:表示产品的名称

另外一个表格名称是emp 里面有2列数据,一列是ID 一列是DIDid:表示用户号did:表示购买的产品号

要让emp表中的did列去引用dept表中的id

可以用下面的方法

格式:alter table 表名 add constraint 约束名称 约束类型 (列名) references 被引用的表名称(列名)

例子:alter table emp add constraint jfkdsj foreign key (did) references dept (id)

SQL常用命令使用方法:

数据记录筛选:

select*from Products:查询出Products表里面的所有信息

select ProductID,ProductName from Products:查询出Products表里面所有的ProductID,ProductName

select ProductID,ProductName from Productswhere ProductID=1:查询出Products表里面ProductID=1的所有ProductID和ProductName

select* from employee where fname=‘Paul‘ andjob_id=5 :查询出employee表中fname=Paul,并且job_id=5的所有记录

select*from Products where ProductIDin(4,5,6):查询出Products表中ProductID为4,5,6的所有信息

select*from Products where UnitPrice>10and UnitPrice<30 order by UnitPrice:查询出Products表中10

select*from Products where UnitPrice between10 and 30 order by UnitPrice:上面的另外一种写法

select * from Employees where FirstName like‘A%‘:查询出Employees中FirstName里面第一个字母是A的所有人信息

select*from Employees where FirstName like‘%A%‘:查询出Employees中FirstName里面中间有A的所有人信息

select*from Employees where FirstName like‘%A‘:查询出Employees中FirstName里面最后一个字母是A的所有人信息

select count(*) from Employees:查询出Employees表中的所有记录数

select min(Unitprice)from Products:查询出Products表中Unitprice的最小值

select max(Unitprice)from Products:查询出Products表中Unitprice的最大值

select avg(Unitprice)from Products:查询出Products表中Unitprice的平均值

select sum(Unitprice)from Products:查询出Products表中Unitprice的总和

select * from Products where Unitprice>(select avg(Unitprice) from Products):有子查询,查找出比平均值高的商品信息

select top 5* from Products:查询出前五条的记录信息

select distinct [name] from Category :查出Category 中不重复的name

select count(distinct name) from Category :查出Category 中不重复的name的数量

(2) 更新数据记录:sql="update 数据表 set 字段名=字段值 where 条件表达式"sql="update 数据表 set 字段1=值1,字段2=值2 …… 字段n=值n where 条件表达式"

(3) 删除数据记录:sql="delete from 数据表 where 条件表达式"sql="delete from 数据表" (将数据表所有记录删除)

(4) 添加数据记录:sql="insert into 数据表 (字段1,字段2,字段3 …) values (值1,值2,值3 …)"sql="insert into 目标数据表 select 字段名 from 源数据表" (把源数据表的记录添加到目标数据表)

(5) 数据记录统计函数:AVG(字段名) 得出一个表格栏平均值COUNT(*字段名) 对数据行数的统计或对某一栏有值的数据行数统计MAX(字段名) 取得一个表格栏最大的值MIN(字段名) 取得一个表格栏最小的值SUM(字段名) 把数据栏的值相加引用以上函数的方法:sql="select sum(字段名) as 别名from 数据表 where 条件表达式"set rs=conn.excute(sql)用 rs("别名") 获取统的计值,其它函数运用同上。

(5) 数据表的建立和删除:CREATE TABLE 数据表名称(字段1 类型1(长度),字段2 类型2(长度) …… )例:CREATE TABLE tab01(name varchar(50),datetime defaultnow())

DROP TABLE 数据表名称 (永久性删除一个数据表)

2. 记录集对象的方法:rs.movenext 将记录指针从当前的位置向下移一行rs.moveprevious 将记录指针从当前的位置向上移一行rs.movefirst 将记录指针移到数据表第一行rs.movelast 将记录指针移到数据表最后一行rs.absoluteposition=N 将记录指针移到数据表第N行rs.absolutepage=N 将记录指针移到第N页的第一行rs.pagesize=N 设置每页为N条记录rs.pagecount 根据 pagesize 的设置返回总页数rs.recordcount 返回记录总数rs.bof 返回记录指针是否超出数据表首端,true表示是,false为否rs.eof 返回记录指针是否超出数据表末端,true表示是,false为否rs.delete 删除当前记录,但记录指针不会向下移动rs.addnew 添加记录到数据表末端rs.update 更新数据表记录

排序

desc就是用于查询出结果时候对结果进行排序,是降序排序,而asc就是升序。。要用与order by一起用。 例如select * from student order by id desc; 就是把选出的结果经过“按id从大到小排序”后,把资源返回。还可以select * from student order  by age desc,id desc;用“,”号隔开多个排序条件,这样,先按age 再按 id,就是说,先按age从大到小排序,如果有相同年龄的,那么相同年龄的学生再按他们的id从大到小排序。

DESC指排序时按降序排序ASC是升序。

SqlServer数据库知识点笔记

上一篇:PHP每半小时执行一次怎么写?
下一篇:没有了
网友评论