当前位置:操作系统 > Unix/Linux >>

数据库基本crud语句


平时拼接sql语句时,用StringBuffer.append比较好 切忌"+",当然单一的sql增删改查可以用+比较方便 
 
select * from sysobjects where name='testview'//要查询系统是否存在这个视图,触发器。。。。 
 
identity(起始值,步长)//流水号 
 
select 1 from table_1//表示有多少行就会输出多少行个1 
 
insert into table_1 select '1','1'...//快速的插入数据 
 
数据库增删改查 
insert into table_1(name,password) values('shi','shi') 
 
delete from table_1 where id='shi' 
 
update table_1 set id='shidili' where id='shi' 
 
select * from table_1 
 
查询涉及到分组的时候::: 
HAVING 子句 
在 SQL 中增加 HAVING 子句原因是,WHERE 关键字无法与合计函数一起使用。 
 
SQL HAVING 语法 
SELECT column_name, aggregate_function(column_name) 
FROM table_name 
WHERE column_name operator value 
GROUP BY column_name 
HAVING aggregate_function(column_name) operator value 
 
修改表结构 
增加字段:alter table 表名 add 列名 属性 www.zzzyk.com
删除字段:alter table 表名 drop column 列名 
修改字段:alter table 表名 alter column 列名 属性 
修改字段名称  sp_rename 'table.column1','newcolumnname1','column' 
//数据库已有不相容数据,修改字段只能对长度进行修改,不能改列名和数据类型alter table 表名 alter column 列名(value) 
添加约束: 
非空:alter table 表名 alter column 列名(类型int) not null 
主键:alter table 表名 add  primary key(列名1,列名2。。。。) 
外键:alter table 表名 add  foreign key(列名)references 表名2(列名2) 
唯一:alter table 表名 add unique(列名1,列名2。。。。) 
检查:alter table 表名 add check(检查条件) 
 
两个表结构之间互相复制 
 
//把表A复制到表Temp_A(必须表Temp_A不存在) 
select * into Temp_A from A 
//把表2查询出来的数据全部复制到表1中(表1表2都必须存在) 
Insert into Table2(a, c, d) select a,c,5 from Table1 
 
表数据赋值 
1。表结构相同的表,且在同一数据库(如,table1,table2) 
 
Sql :insert into table1 select * from table2 (完全复制) 
 
           insert into table1 select distinct * from table2(不复制重复纪录) 
 
          insert into table1 select top 5 * from table2 (前五条纪录) 
 
2。   不在同一数据库中(如,db1 table1,db2 table2) 
 
sql:    insert into db1..table1 select * from db2..table2 (完全复制) 
 
           insert into db1..table1 select distinct * from db2table2(不复制重复纪录) 
 
          insert into tdb1..able1 select top 5 * from   db2table2 (前五条纪录)
 
 
 
 
作者 409304740
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,